Después de la importación inicial de datos a tu almacén de datos de atención médica de Vertex AI Search, es posible que hayas realizado cualquiera de las siguientes actualizaciones en tu almacenamiento de FHIR de origen:
- Se agregaron nuevos recursos de FHIR
- Se actualizaron los recursos de FHIR existentes
- Recursos de FHIR borrados
En esos casos, puedes conciliar los cambios de tu almacén de FHIR de origen en tu almacén de datos de atención médica de Vertex AI Search.
Descripción general de la conciliación
Puedes conciliar los cambios de forma incremental o total. Los dos modos se comparan en la siguiente tabla.
Cambios en la tienda de FHIR de origen | Modo incremental | Modo completo |
---|---|---|
Nuevos recursos de FHIR | Agrega documentos nuevos al almacén de datos de Vertex AI Search | Agrega documentos nuevos al almacén de datos de Vertex AI Search |
Recursos de FHIR actualizados | Reemplaza los documentos existentes en el almacén de datos de Vertex AI Search y conserva el ID del documento. | Reemplaza los documentos existentes en el almacén de datos de Vertex AI Search y conserva el ID del documento. |
Recursos de FHIR borrados | No se concilia | Quita los documentos correspondientes de tu almacén de datos de Vertex AI Search. |
Antes de comenzar
Revisa las cuotas y los límites de tu Google Cloud proyecto. Tu almacén de datos de atención médica de Vertex AI Search puede contener un máximo de 1 millón de documentos por proyecto. Si se alcanza esta cuota durante la importación, el proceso de importar se detiene.
Cómo realizar una importación incremental
En el siguiente ejemplo, se muestra cómo importar cambios incrementales desde un almacén de FHIR de la API de Cloud Healthcare con el método documents.import
.
Permisos necesarios para esta tarea
Otorga los siguientes permisos o los siguientes roles de administración de identidades y accesos (IAM) a la cuenta de servicio service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
.
- Para la importación única de datos de FHIR desde almacenes de FHIR en la API de Cloud Healthcare.
Permisos
bigquery.jobs.create
bigquery.datasets.create
bigquery.tables.export
healthcare.datasets.get
healthcare.datasets.list
healthcare.fhirStores.get
healthcare.fhirStores.list
healthcare.fhirStores.export
Funciones
- Para la importación continua de datos de FHIR desde almacenes de FHIR en la API de Cloud Healthcare (versión preliminar).
Permisos
healthcare.datasets.get
healthcare.datasets.list
healthcare.fhirStores.get
healthcare.fhirStores.update
healthcare.fhirStores.list
healthcare.fhirStores.export
healthcare.fhirResources.get
Funciones
- Para personalizar el esquema cuando creas un almacén de datos (versión preliminar) para configurar la indexabilidad, la capacidad de búsqueda y la recuperabilidad de los recursos y elementos de FHIR.
Permisos
storage.objects.create
storage.objects.delete
storage.objects.list
Funciones
- Para importar datos de FHIR que hacen referencia a archivos en Google Cloud. Se otorgan de forma predeterminada si los archivos a los que se hace referencia están en el mismo Google Cloud proyecto que la app de Vertex AI Search.
Permisos
storage.objects.get
storage.buckets.create
Funciones
Realiza una importación incremental.
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 "} }'Reemplaza lo siguiente:
PROJECT_ID
: Es el ID de tu Google Cloud proyecto.DATA_STORE_ID
: El ID del almacén de datos de Vertex AI Search.CLOUD_HEALTHCARE_DATASET_ID
: El ID del conjunto de datos de la API de Cloud Healthcare que contiene el almacén de FHIR de origen.CLOUD_HEALTHCARE_DATASET_LOCATION
: Es la ubicación del conjunto de datos de la API de Cloud Healthcare que contiene el almacén de FHIR de origen.FHIR_STORE_ID
: Es el ID del almacén de FHIR R4 de la API de Cloud Healthcare.
Respuesta
Deberías recibir una respuesta JSON similar a la que se muestra a continuación: La respuesta contiene un identificador para una operación de larga duración. Las operaciones de larga duración se muestran cuando las llamadas a un método pueden tardar una cantidad considerable de tiempo en completarse. Anota el valor de IMPORT_OPERATION_ID. Necesitas este valor para verificar el estado de la importación.
{ "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" } }Verifica si la operación de importación de datos de FHIR está completa.
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 "Reemplaza lo siguiente:
PROJECT_ID
: Es el ID de tu Google Cloud proyecto.DATA_STORE_ID
: El ID del almacén de datos de Vertex AI Search.IMPORT_OPERATION_ID
: Es el ID de la operación de larga duración que se muestra cuando llamas al métodoimport
.
Respuesta
Deberías recibir una respuesta JSON similar a la que se muestra a continuación: La operación de importación es una operación de larga duración. Mientras la operación está en ejecución, la respuesta contiene los siguientes campos:
successCount
: Indica la cantidad de recursos de FHIR que se importaron correctamente hasta el momento.failureCount
: Indica la cantidad de recursos de FHIR que no se pudieron importar hasta el momento. Este campo solo se muestra si hay recursos FHIR que no se pudieron importar.
Cuando se complete la operación, la respuesta contendrá los siguientes campos:
successCount
: Indica la cantidad de recursos FHIR que se importaron correctamente.failureCount
: Indica la cantidad de recursos de FHIR que no se pudieron importar. Este campo solo se muestra si hay recursos FHIR que no se pudieron importar.totalCount
: Indica la cantidad de recursos de FHIR que están presentes en el almacén de FHIR de origen. Este campo solo se muestra si hay recursos FHIR que no se pudieron importar.done
: Tiene el valortrue
para indicar que se completó la operación de importación.errorSamples
: Proporciona información sobre los recursos que no se pudieron importar. Este campo solo se muestra si hay recursos FHIR que no se pudieron importar.errorConfig
: Proporciona una ruta de acceso a una ubicación de Cloud Storage que contiene el archivo de registro de resumen de errores.
{ "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 " } } }
Para obtener más información, consulta la documentación de referencia de la API de Python del compilador de agentes de Vertex AI.
Para autenticarte en Vertex AI Agent Builder, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.