医療データを更新する
Vertex AI Search の医療データストアにデータを最初にインポートした後、ソース FHIR ストアで次のいずれかの更新を行った可能性があります。
- 新しい FHIR リソースを追加しました
- 既存の FHIR リソースを更新しました
- FHIR リソースを削除しました
このような場合は、ソース FHIR ストアの変更を Vertex AI Search の医療データストアに調整できます。
調整の概要
変更は、増分式または完全な方法で調整できます。次の表に、2 つのモードの比較を示します。
ソース FHIR ストアへの変更 |
増分モード
|
フルモード
|
新しい FHIR リソース
|
Vertex AI Search データストアに新しいドキュメントを追加します
|
Vertex AI Search データストアに新しいドキュメントを追加します
|
FHIR リソースを更新しました
|
ドキュメント ID を保持しながら、Vertex AI Search データストア内の既存のドキュメントを置き換えます
|
ドキュメント ID を保持しながら、Vertex AI Search データストア内の既存のドキュメントを置き換えます
|
FHIR リソースを削除しました
|
調整されません
|
Vertex AI Search データストアから対応するドキュメントを削除します
|
始める前に
Google Cloud プロジェクトの割り当てと上限を確認します。Vertex AI Search Healthcare データストアには、プロジェクトあたり最大 100 万件のドキュメントを含めることができます。インポート中にこの割り当てに達すると、インポート プロセスが停止します。
次のサンプルは、documents.import
メソッドを使用して Cloud Healthcare API FHIR ストアから増分変更をインポートする方法を示しています。
このタスクに必要な権限
Vertex AI Search データストアを含むプロジェクトの service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
サービス アカウントに、次の Identity and Access Management(IAM)ロールを付与します。
目的 |
ロール |
Cloud Healthcare API の FHIR ストアから FHIR データを 1 回だけバッチ インポートする場合。 |
|
同じ Google Cloud プロジェクト内の Cloud Healthcare API の FHIR ストアから FHIR データをストリーミング インポートする。 |
|
別の Google Cloud プロジェクトの Cloud Healthcare API の FHIR ストアから FHIR データをストリーミング インポートする。 |
|
Cloud Storage 内のファイルを参照する FHIR データをインポートするには。参照されるファイルが Vertex AI Search アプリと同じ Google Cloud プロジェクトにある場合、これらの権限はデフォルトで付与されます。 |
ストレージ オブジェクト管理者(roles/storage.objectAdmin ) |
データストアの作成時にスキーマをカスタマイズして、FHIR リソースと要素のインデックス登録可能性、検索可能性、取得可能性を構成するには。 |
ストレージ オブジェクト管理者(roles/storage.objectAdmin ) |
Cloud Healthcare API FHIR R4 データストアを含むプロジェクトの service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
サービス アカウントに、次の Identity and Access Management ロールを付与します。
目的 |
ロール |
別の Google Cloud プロジェクトの Cloud Healthcare API の FHIR ストアから FHIR データをストリーミング インポートする。 |
|
Cloud Healthcare API FHIR R4 データストアを含むプロジェクトの service-SOURCE_PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com
サービス アカウントに、次の Identity and Access Management ロールを付与します。
REST
増分インポートを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/dataStores/DATA_STORE_ID/branches/0/documents:import" \
-d '{
"reconciliation_mode": "INCREMENTAL",
"fhir_store_source": {"fhir_store": "projects/PROJECT_ID/locations/CLOUD_HEALTHCARE_DATASET_LOCATION/datasets/CLOUD_HEALTHCARE_DATASET_ID/fhirStores/FHIR_STORE_ID"}
}'
次のように置き換えます。
PROJECT_ID
: 実際の Google Cloud プロジェクト ID。
DATA_STORE_ID
: Vertex AI Search データストアの ID。
CLOUD_HEALTHCARE_DATASET_ID
: ソース FHIR ストアを含む Cloud Healthcare API データセットの ID。
CLOUD_HEALTHCARE_DATASET_LOCATION
: ソース FHIR ストアを含む Cloud Healthcare API データセットのロケーション。
FHIR_STORE_ID
: Cloud Healthcare API FHIR R4 ストアの ID。
レスポンス
次のような JSON レスポンスが返されます。レスポンスには、長時間実行オペレーションの ID が含まれます。長時間実行オペレーションは、メソッドの呼び出しが完了するまでにかなりの時間がかかる場合に返されます。IMPORT_OPERATION_ID の値をメモします。この値は、インポートのステータスを確認するために必要です。
{
"name": "projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/operations/IMPORT_OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.ImportDocumentsMetadata"
}
}
FHIR データのインポート オペレーションが完了したかどうかを確認します。
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://us-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/operations/IMPORT_OPERATION_ID"
次のように置き換えます。
PROJECT_ID
: 実際の Google Cloud プロジェクト ID。
DATA_STORE_ID
: Vertex AI Search データストアの ID。
IMPORT_OPERATION_ID
: import
メソッドの呼び出し時に返される長時間実行オペレーションのオペレーション ID。
レスポンス
次のような JSON レスポンスが返されます。インポート オペレーションは長時間実行オペレーションです。オペレーションの実行中、レスポンスには次のフィールドが含まれます。
successCount
: これまでに正常にインポートされた FHIR リソースの数を示します。
failureCount
: これまでにインポートに失敗した FHIR リソースの数を示します。このフィールドは、インポートに失敗した FHIR リソースがある場合にのみ表示されます。
オペレーションが完了すると、レスポンスに次のフィールドが含まれます。
successCount
: 正常にインポートされた FHIR リソースの数を示します。
failureCount
: インポートに失敗した FHIR リソースの数を示します。このフィールドは、インポートに失敗した FHIR リソースがある場合にのみ表示されます。
totalCount
: ソース FHIR ストアに存在する FHIR リソースの数を示します。このフィールドは、インポートに失敗した FHIR リソースがある場合にのみ表示されます。
done
: インポート オペレーションが完了したことを示す値 true
があります
errorSamples
: インポートに失敗したリソースに関する情報を提供します。このフィールドは、インポートに失敗した FHIR リソースがある場合にのみ表示されます。
errorConfig
: エラー概要ログファイルを含む Cloud Storage ロケーションのパスを指定します。
{
"name": "projects/PROJECT_ID/locations/us/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/operations/IMPORT_OPERATION_ID",
"metadata": {
"@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.ImportDocumentsMetadata",
"createTime": "START_TIMESTAMP",
"updateTime": "END_TIMESTAMP",
"successCount": "SUCCESS_COUNT",
"failureCount": "FAILURE_COUNT",
"totalCount": "TOTAL_COUNT",
},
"done": true,
"response": {
"@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.ImportDocumentsResponse",
"errorSamples": [ERROR_SAMPLE],
"errorConfig": {
"gcsPrefix": "LOG_FILE_LOCATION"
}
}
}
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-10-19 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["わかりにくい","hardToUnderstand","thumb-down"],["情報またはサンプルコードが不正確","incorrectInformationOrSampleCode","thumb-down"],["必要な情報 / サンプルがない","missingTheInformationSamplesINeed","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-10-19 UTC。"],[],[]]