Après l'importation initiale de données dans votre data store de santé Vertex AI Search, vous avez peut-être effectué l'une des mises à jour suivantes dans votre data store FHIR source:
- Ajout de nouvelles ressources FHIR
- Mise à jour des ressources FHIR existantes
- Ressources FHIR supprimées
Dans ce cas, vous pouvez réconcilier les modifications de votre magasin FHIR source dans votre data store de données de santé Vertex AI Search.
Présentation du rapprochement
Vous pouvez rapprocher les modifications de manière incrémentielle ou complète. Les deux modes sont comparés dans le tableau suivant.
Modifications apportées au datastore FHIR source | Mode incrémentiel | Mode complet |
---|---|---|
Nouvelles ressources FHIR | Ajoute de nouveaux documents au data store Vertex AI Search | Ajoute de nouveaux documents au data store Vertex AI Search |
Ressources FHIR mises à jour | Remplace les documents existants dans le data store Vertex AI Search tout en conservant l'ID du document. | Remplace les documents existants dans le data store Vertex AI Search tout en conservant l'ID du document. |
Ressources FHIR supprimées | ne sont pas conciliées ; | Supprime les documents correspondants de votre data store Vertex AI Search. |
Avant de commencer
Consultez les quotas et limites de votre projet Google Cloud . Votre data store de santé Vertex AI Search peut contenir un maximum d'un million de documents par projet. Si ce quota est atteint pendant l'importation, le processus d'importation s'arrête.
Effectuer une importation incrémentielle
L'exemple suivant montre comment importer des modifications incrémentielles à partir d'un magasin FHIR de l'API Cloud Healthcare à l'aide de la méthode documents.import
.
Autorisations requises pour cette tâche
Accordez les autorisations suivantes ou les rôles Identity and Access Management (IAM) suivants au compte de service service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
.
- Pour importer des données FHIR à partir de magasins FHIR dans l'API Cloud Healthcare
Autorisations
bigquery.jobs.create
bigquery.datasets.create
bigquery.tables.export
healthcare.datasets.get
healthcare.datasets.list
healthcare.fhirStores.get
healthcare.fhirStores.list
healthcare.fhirStores.export
Rôles
- Pour l'importation en streaming de données FHIR à partir de magasins FHIR dans l'API Cloud Healthcare (version Preview).
Autorisations
healthcare.datasets.get
healthcare.datasets.list
healthcare.fhirStores.get
healthcare.fhirStores.update
healthcare.fhirStores.list
healthcare.fhirStores.export
healthcare.fhirResources.get
Rôles
- Pour personnaliser le schéma lors de la création d'un datastore de données (version Preview) afin de configurer l'indexabilité, la recherche et la récupération des ressources et des éléments FHIR.
Autorisations
storage.objects.create
storage.objects.delete
storage.objects.list
Rôles
- Pour importer des données FHIR qui font référence à des fichiers dans Google Cloud. Elles sont accordées par défaut si les fichiers référencés se trouvent dans le même Google Cloud projet que l'application Vertex AI Search.
Autorisations
storage.objects.get
storage.buckets.create
Rôles
Effectuez une importation incrémentielle.
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 "} }'Remplacez les éléments suivants :
PROJECT_ID
: ID de votre Google Cloud projet.DATA_STORE_ID
: ID du data store Vertex AI Search.CLOUD_HEALTHCARE_DATASET_ID
: ID de l'ensemble de données de l'API Cloud Healthcare contenant le magasin FHIR source.CLOUD_HEALTHCARE_DATASET_LOCATION
: emplacement de l'ensemble de données de l'API Cloud Healthcare contenant le magasin FHIR source.FHIR_STORE_ID
: ID du magasin FHIR R4 de l'API Cloud Healthcare.
Réponse
Vous devriez recevoir une réponse JSON semblable à la suivante. La réponse contient un identifiant pour une opération de longue durée. Les opérations de longue durée sont renvoyées lorsque les appels de méthode peuvent prendre un temps considérable. Notez la valeur de IMPORT_OPERATION_ID. Vous avez besoin de cette valeur pour vérifier l'état de l'importation.
{ "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" } }Vérifiez si l'opération d'importation des données FHIR est terminée.
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 "Remplacez les éléments suivants :
PROJECT_ID
: ID de votre Google Cloud projet.DATA_STORE_ID
: ID du data store Vertex AI Search.IMPORT_OPERATION_ID
: ID de l'opération de longue durée renvoyé lorsque vous appelez la méthodeimport
.
Réponse
Vous devriez recevoir une réponse JSON semblable à la suivante. L'opération d'importation est une opération de longue durée. Pendant l'exécution de l'opération, la réponse contient les champs suivants:
successCount
: indique le nombre de ressources FHIR importées jusqu'à présent.failureCount
: indique le nombre de ressources FHIR qui n'ont pas pu être importées jusqu'à présent. Ce champ ne s'affiche que si l'importation de certaines ressources FHIR a échoué.
Une fois l'opération terminée, la réponse contient les champs suivants:
successCount
: indique le nombre de ressources FHIR importées avec succès.failureCount
: indique le nombre de ressources FHIR dont l'importation a échoué. Ce champ ne s'affiche que si l'importation de certaines ressources FHIR a échoué.totalCount
: indique le nombre de ressources FHIR présentes dans le magasin FHIR source. Ce champ ne s'affiche que si l'importation de certaines ressources FHIR a échoué.done
: a la valeurtrue
pour indiquer que l'opération d'importation est terminéeerrorSamples
: fournit des informations sur les ressources dont l'importation a échoué. Ce champ ne s'affiche que si l'importation de certaines ressources FHIR a échoué.errorConfig
: fournit un chemin d'accès à un emplacement Cloud Storage contenant le fichier journal récapitulatif des erreurs.
{ "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 " } } }
Pour en savoir plus, consultez la documentation de référence de l'API Python Vertex AI Agent Builder.
Pour vous authentifier auprès de Vertex AI Agent Builder, configurez le service Identifiants par défaut de l'application. Pour en savoir plus, consultez Configurer l'authentification pour un environnement de développement local.