En esta página, se explica cómo exportar recursos FHIR a BigQuery para realizar exploraciones y análisis. La operación de exportación genera BigQuery para cada tipo de recurso de FHIR del almacén de FHIR.
Para mejorar el rendimiento de las consultas y reducir los costos, puedes configurar BigQuery transmitir a tablas particionadas. Para consulta las instrucciones Exporta recursos de FHIR a tablas particionadas.
Configura permisos de BigQuery
Antes de exportar recursos FHIR a BigQuery, debes otorgar permisos adicionales a la cuenta de servicio del agente de servicio de Cloud Healthcare. Para obtener más información, consulta Permisos de BigQuery para el almacén de datos de FHIR.
Exporta recursos de FHIR
En los siguientes ejemplos, se muestra cómo exportar recursos de FHIR a una tabla de BigQuery.
Cuando configures el destino de BigQuery, usa el URI completamente calificado como se indica a continuación:
bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID
El comportamiento de la operación de exportación puede variar según los siguientes factores:
- Si la tabla de destino ya existe.
- Establece si estableces el campo
force
. - Si especificas una enumeración en
WriteDisposition
. Si especificas una enumeración, no configures el campoforce
.
El comportamiento en cada uno de estos casos es el siguiente:
- Si la tabla de destino ya existe y
force
se configura comotrue
, la operación de exportación reemplazará la tabla existente. - Si la tabla de destino ya existe y
force
se establece enfalse
, se produce un error. - Si la tabla de destino aún no existe, la operación de exportación crea una tabla nueva, sin importar si especificas el campo
force
. - Cuando se usa
WriteDisposition
, si la tabla de destino ya existe y está vacía, la operación de exportación se completa de forma correcta en lugar de mostrar un error.
La operación genera una tabla de BigQuery para cada tipo de recurso en el almacén de FHIR.
Console
Para exportar recursos de FHIR a BigQuery con el En la consola de Google Cloud, completa los siguientes pasos:
En la consola de Google Cloud, ve a la página Conjuntos de datos.
Haz clic en el conjunto de datos que tiene el almacén de FHIR con los datos que quieres exportar.
En la misma fila que el almacén de FHIR, abre la lista Acciones y selecciona Exportar.
En la página Exportar recursos de FHIR que aparece, busca la Sección Selecciona un destino. Selecciona Tabla de BigQuery.
En la sección Disposición de escritura de la tabla de destino, selecciona una de las siguientes opciones para determinar el comportamiento de la operación de exportación:
- Solo exportar datos si las tablas de destino están vacías: Esto equivale a seleccionar la enumeración
WRITE_EMPTY
enWriteDisposition
. - Agregar datos a las tablas de destino: Esto equivale a seleccionar la enumeración
WRITE_APPEND
enWriteDisposition
. - Borrar todos los datos existentes en las tablas de destino antes de escribir el FHIR
recursos: esto equivale a seleccionar la enumeración
WRITE_TRUNCATE
enWriteDisposition
- Solo exportar datos si las tablas de destino están vacías: Esto equivale a seleccionar la enumeración
En la sección Configuración de exportación de FHIR, haz clic en Explorar para seleccionar el proyecto y el conjunto de datos de BigQuery.
En el menú desplegable Tipo de esquema, selecciona el esquema de salida para el en la tabla de BigQuery. Los siguientes esquemas están disponibles:
- Analytics. Un esquema basado en el documento SQL en FHIR. Dado que BigQuery solo admite 10,000 columnas por tabla, no se generan esquemas para los campos
Parameters.parameter.resource
,Bundle.entry.resource
yBundle.entry.response.outcome
. - Analytics V2. Un esquema similar al de Analytics, pero con compatibilidad adicional para lo siguiente:
- Extensiones con varios valores para el mismo
url
- Recursos de FHIR contenidos
- Extensiones con varios valores para el mismo
- Analytics. Un esquema basado en el documento SQL en FHIR. Dado que BigQuery solo admite 10,000 columnas por tabla, no se generan esquemas para los campos
Selecciona un nivel de profundidad en Profundidad de estructura recurrente. control deslizante para establecer la profundidad de todas las estructuras recursivas en el esquema de salida. De forma predeterminada, el valor recurrente es 2.
Para obtener más información, consulta
recursiveStructureDepth
.Haz clic en Exportar para exportar recursos de FHIR a BigQuery.
- Para seguir el estado de la operación, haz clic en la pestaña Operaciones. Una vez que se completa la operación, aparecerán las siguientes indicaciones:
- La sección Estado de la operación de larga duración tiene una marca de verificación verde debajo del encabezado Aceptar.
- La sección Descripción general tiene una marca de verificación verde y un indicador Aceptar en la misma fila que el ID de la operación.
gcloud
Para exportar recursos de FHIR a BigQuery, ejecuta el comando gcloud healthcare fhir-stores export bq
.
Exportar los recursos de FHIR.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- LOCATION: La ubicación del conjunto de datos
- DATASET_ID es el conjunto de datos superior del almacén de FHIR
- FHIR_STORE_ID es el ID del almacén de FHIR
- BIGQUERY_DATASET_ID: Es el nombre del conjunto de datos existente de BigQuery al que exportarás los recursos de FHIR.
- SCHEMA_TYPE: Un valor para
SchemaType
. Usa uno de los siguientes valores:analytics
: Es un esquema basado en el documento SQL en FHIR. Dado que BigQuery solo admite 10,000 columnas por tabla, no se generan esquemas para los camposParameters.parameter.resource
,Bundle.entry.resource
yBundle.entry.response.outcome
.analytics_v2
Un esquema similar aanalytics
con compatibilidad adicional para lo siguiente:- Extensiones con campos repetidos
- Recursos de FHIR contenidos
analytics-v2
usa más espacio en la tabla de destino queanalytics
.
- WRITE_DISPOSITION: Es un valor para
WriteDisposition
. Usa uno de los siguientes valores:write-empty
Solo exporta datos si las tablas de BigQuery de destino están vacías.write-truncate
Borrar todos los datos existentes en las tablas de BigQuery antes de escribir los recursos de FHIR.write-append
Agregar datos a las tablas de BigQuery de destino
- FHIR_RESOURCE_TYPE: Es un campo opcional. Especifica uno o más tipos de recursos de FHIR delimitados por comas para exportar solo los recursos de FHIR de esos tipos.
- SINCE_TIMESTAMP: Es un campo opcional. Especifica un valor en el formato
YYYY-MM-DDThh:mm:ss.sss+zz:zz
para exportar solo los recursos de FHIR actualizados después de un horario específico. Especifica el tiempo hasta el segundo e incluye una zona horaria. Por ejemplo,2015-02-07T13:28:17.239+02:00
y2017-01-01T00:00:00Z
son horas válidas.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud healthcare fhir-stores export bq FHIR_STORE_ID \ --location=LOCATION \ --dataset=DATASET_ID \ --bq-dataset=bq://PROJECT_ID.BIGQUERY_DATASET_ID \ --schema-type=SCHEMA_TYPE \ --write-disposition=WRITE_DISPOSITION \ --resource-type=FHIR_RESOURCE_TYPE \ --since=SINCE_TIMESTAMP
Windows (PowerShell)
gcloud healthcare fhir-stores export bq FHIR_STORE_ID ` --location=LOCATION ` --dataset=DATASET_ID ` --bq-dataset=bq://PROJECT_ID.BIGQUERY_DATASET_ID ` --schema-type=SCHEMA_TYPE ` --write-disposition=WRITE_DISPOSITION ` --resource-type=FHIR_RESOURCE_TYPE ` --since=SINCE_TIMESTAMP
Windows (cmd.exe)
gcloud healthcare fhir-stores export bq FHIR_STORE_ID ^ --location=LOCATION ^ --dataset=DATASET_ID ^ --bq-dataset=bq://PROJECT_ID.BIGQUERY_DATASET_ID ^ --schema-type=SCHEMA_TYPE ^ --write-disposition=WRITE_DISPOSITION ^ --resource-type=FHIR_RESOURCE_TYPE ^ --since=SINCE_TIMESTAMP
name
una vez finalizada la exportación. Ten en cuenta el valor deOPERATION_ID
. Necesitarás este valor en el paso siguiente.Respuesta
Request issued for: [FHIR_STORE_ID] Waiting for operation [projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID] to complete...⠏ name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID
Para ver más detalles sobre la operación, ejecuta el siguiente comando:
gcloud healthcare operations describe
y proporciona el OPERATION_ID de la respuesta.Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- DATASET_ID: El ID del conjunto de datos
- LOCATION: La ubicación del conjunto de datos
- OPERATION_ID: Es el ID que muestra la operación de larga duración.
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud healthcare operations describe OPERATION_ID \ --project=PROJECT_ID \ --dataset=DATASET_ID \ --location=LOCATION
Windows (PowerShell)
gcloud healthcare operations describe OPERATION_ID ` --project=PROJECT_ID ` --dataset=DATASET_ID ` --location=LOCATION
Windows (cmd.exe)
gcloud healthcare operations describe OPERATION_ID ^ --project=PROJECT_ID ^ --dataset=DATASET_ID ^ --location=LOCATION
Deberías recibir una respuesta similar a la que figura a continuación:
Respuesta
done: true // If there were any errors, an `error` field displays instead of a `response` field. // See Troubleshooting long-running operations for a list of response codes. error: ERROR code: ERROR_CODE message: DESCRIPTION metadata: '@type': 'type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata' apiMethodName: 'google.cloud.healthcare.v1.fhir.FhirStoreService.ExportResources_bq' counter: success: 'SUCCESS_COUNT' // If there were any failures, they display in the `failure` field. failure: 'FAILURE_COUNT' createTime: 'YYYY-MM-DDTHH:MM:SS+ZZ:ZZ' endTime: 'YYYY-MM-DDTHH:MM:SS+ZZ:ZZ' logsUrl: https://console.cloud.google.com/CLOUD_LOGGING_URL name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID // The `response` field only displays if there were no errors. response: '@type': 'type.googleapis.com/google.cloud.healthcare.v1.fhir.ExportResourcesResponse'
REST
Para exportar recursos de FHIR a BigQuery, usa el método projects.locations.datasets.fhirStores.export
.
Exporta los recursos de FHIR:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- LOCATION: La ubicación del conjunto de datos
- DATASET_ID es el conjunto de datos superior del almacén de FHIR
- FHIR_STORE_ID es el ID del almacén de FHIR
- BIGQUERY_DATASET_ID: Es el nombre del conjunto de datos existente de BigQuery al que exportarás los recursos de FHIR.
- SCHEMA_TYPE: Es un valor para
SchemaType
. Usa uno de los siguientes valores:ANALYTICS
: Es un esquema basado en el documento SQL en FHIR. Debido a que BigQuery solo permite 10,000 columnas por tabla, no se generan esquemas para los camposParameters.parameter.resource
,Bundle.entry.resource
yBundle.entry.response.outcome
.ANALYTICS_V2
Un esquema similar aANALYTICS
con compatibilidad adicional para lo siguiente:- Extensiones con varios valores para el mismo
url
- Recursos de FHIR contenidos
.ANALYTICS_V2
usa más espacio en la tabla de destino queANALYTICS
- Extensiones con varios valores para el mismo
- WRITE_DISPOSITION: Un valor para
WriteDisposition
. Usa uno de los siguientes valores:WRITE_EMPTY
: Solo exporta datos si las tablas de BigQuery de destino están vacías.WRITE_TRUNCATE
Borrar todos los datos existentes en las tablas de BigQuery antes de escribir los recursos de FHIR.WRITE_APPEND
Agregar datos a las tablas de BigQuery de destino
- FHIR_RESOURCE_TYPE: Es un campo opcional. Especifica uno o más tipos de recursos de FHIR delimitados por comas para exportar solo los recursos de FHIR de esos tipos.
- SINCE_TIMESTAMP: Es un campo opcional. Especifica un valor con el formato
YYYY-MM-DDThh:mm:ss.sss+zz:zz
para exportar solo los recursos de FHIR actualizados después de un momento específico. Especifica el tiempo hasta el segundo e incluye una zona horaria. Por ejemplo,2015-02-07T13:28:17.239+02:00
y2017-01-01T00:00:00Z
son horas válidas.
Cuerpo JSON de la solicitud:
{ "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", }, "writeDisposition": "WRITE_DISPOSITION" }, "_type": "FHIR_RESOURCE_TYPE", "_since": "SINCE_TIMESTAMP" }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:cat > request.json << 'EOF' { "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", }, "writeDisposition": "WRITE_DISPOSITION" }, "_type": "FHIR_RESOURCE_TYPE", "_since": "SINCE_TIMESTAMP" } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export"PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:@' { "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", }, "writeDisposition": "WRITE_DISPOSITION" }, "_type": "FHIR_RESOURCE_TYPE", "_since": "SINCE_TIMESTAMP" } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export" | Select-Object -Expand ContentExplorador de API
Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Pega el cuerpo de la solicitud en esta herramienta, completa cualquier otro campo obligatorio y haz clic en Ejecutar.
OPERATION_ID
. Necesitarás este valor en el paso siguiente.Usa el método
projects.locations.datasets.operations.get
para obtener el estado de la operación de larga duración.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- DATASET_ID: El ID del conjunto de datos
- LOCATION: La ubicación del conjunto de datos
- OPERATION_ID: Es el ID que muestra la operación de larga duración.
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand ContentExplorador de API
Abre el página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Completa los campos obligatorios y haz clic en Ejecutar.
"done": true
, significa que la operación de larga duración finalizó.
Exporta recursos de FHIR a tablas particionadas
Para exportar recursos de FHIR a tablas particionadas de BigQuery, establece la
TimePartitioning
enum en la
lastUpdatedPartitionConfig
de tu almacén de FHIR.
Las tablas particionadas funcionan como BigQuery
tablas particionadas por unidad de tiempo.
Las tablas particionadas tienen una columna adicional llamada lastUpdated
, que es un duplicado de la columna meta.lastUpdated
que se genera a partir del campo meta.lastUpdated
en un recurso de FHIR. BigQuery usa la columna lastUpdated
para particionar tablas por hora, día, mes o año.
Consulta Selecciona la partición diaria, por hora, mensual o anual para obtener recomendaciones sobre cómo seleccionar el nivel de detalle de la partición.
No puedes convertir tablas de BigQuery existentes no particionadas en
en tablas particionadas. Si exportas cambios en los recursos del paciente a una tabla Patients
no particionada y, luego, creas un nuevo almacén de FHIR con particiones de tablas que exportan al mismo conjunto de datos de BigQuery, la API de Cloud Healthcare seguirá exportando datos a la tabla Patients
no particionada. Para empezar a usar una tabla particionada,
borra la tabla Patients
existente o usa un conjunto de datos de BigQuery diferente.
Si agregas la partición a una configuración de almacén de FHIR existente, puedes exportarlos a tablas no particionadas existentes. Sin embargo, el particionamiento solo se aplicará a las tablas nuevas.
En los siguientes ejemplos, se muestra cómo exportar recursos de FHIR a BigQuery en tablas particionadas.
Console
La consola de Google Cloud y la CLI de gcloud no admiten esta acción. En su lugar, usa curl
, PowerShell o tu lenguaje preferido.
gcloud
La consola de Google Cloud y la CLI de gcloud no admiten esta acción. En su lugar, usa curl
, PowerShell o tu lenguaje preferido.
REST
Para exportar recursos de FHIR a tablas particionadas de BigQuery, usa el
projects.locations.datasets.fhirStores.export
.
Exporta los recursos de FHIR:
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- LOCATION: La ubicación del conjunto de datos
- DATASET_ID es el conjunto de datos superior del almacén de FHIR
- FHIR_STORE_ID es el ID del almacén de FHIR
- BIGQUERY_DATASET_ID: El nombre del conjunto de datos de BigQuery existente en el que exportarás los recursos de FHIR.
- SCHEMA_TYPE: Es un valor para
SchemaType
. Usa uno de los siguientes valores:ANALYTICS
Un esquema basado en el documento SQL en FHIR. Dado que BigQuery solo admite 10,000 columnas por tabla, no se generan esquemas para los camposParameters.parameter.resource
,Bundle.entry.resource
yBundle.entry.response.outcome
.ANALYTICS_V2
: Es un esquema similar aANALYTICS
con compatibilidad adicional para lo siguiente:- Extensiones con varios valores para el mismo
url
- Recursos de FHIR contenidos
.ANALYTICS_V2
usa más espacio en la tabla de destino queANALYTICS
- Extensiones con varios valores para el mismo
- TIME_PARTITION_TYPE: Es el nivel de detalle en el que se particionan los recursos de FHIR exportados. Usa uno de los siguientes valores:
HOUR
: Particiona los datos por hora.DAY
: Datos de partición por díaMONTH
: Datos de partición por mesYEAR
: Particiona los datos por año.
- WRITE_DISPOSITION: Es un valor para
WriteDisposition
. Usa uno de los siguientes valores:WRITE_EMPTY
: Solo exportar datos si la tabla de BigQuery está vacía.WRITE_TRUNCATE
: Borra todos los datos existentes en la tabla de BigQuery antes de escribir las instancias de DICOM.WRITE_APPEND
: adjunta datos a la tabla de BigQuery.
Cuerpo JSON de la solicitud:
{ "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", "lastUpdatedPartitionConfig": { "type": "TIME_PARTITION_TYPE" } }, "writeDisposition": "WRITE_DISPOSITION" } }
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:cat > request.json << 'EOF' { "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", "lastUpdatedPartitionConfig": { "type": "TIME_PARTITION_TYPE" } }, "writeDisposition": "WRITE_DISPOSITION" } } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export"PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado
request.json
. Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:@' { "bigqueryDestination": { "datasetUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID", "schemaConfig": { "schemaType": "SCHEMA_TYPE", "lastUpdatedPartitionConfig": { "type": "TIME_PARTITION_TYPE" } }, "writeDisposition": "WRITE_DISPOSITION" } } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export" | Select-Object -Expand ContentExplorador de API
Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Pega el cuerpo de la solicitud en esta herramienta, completa cualquier otro campo obligatorio y haz clic en Ejecutar.
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Usa el método
projects.locations.datasets.operations.get
para obtener el estado de la operación de larga duración.Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
- PROJECT_IDEl ID de tu proyecto de Google Cloud.
- DATASET_ID: El ID del conjunto de datos
- LOCATION: La ubicación del conjunto de datos
- OPERATION_ID: Es el ID que muestra la operación de larga duración.
Para enviar tu solicitud, elige una de estas opciones:
curl
Ejecuta el siguiente comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"PowerShell
Ejecuta el siguiente comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand ContentExplorador de API
Abre el página de referencia del método. El panel del Explorador de API se abre en la parte derecha de la página. Puedes interactuar con esta herramienta para enviar solicitudes. Completa los campos obligatorios y haz clic en Ejecutar.
"done": true
, significa que la operación de larga duración finalizó.
Consulta una tabla particionada
Para reducir los costos de consulta cuando se consultan tablas particionadas, usa la
WHERE
para filtrar por unidades de tiempo.
Por ejemplo, supongamos que configuraste el
PartitionType
enum a DAY
.
Para consultar una tabla Patients
sobre los recursos de un paciente que se actualizaron en función de un
fecha, ejecuta la siguiente consulta:
SELECT * FROM `PROJECT_ID.BIGQUERY_DATASET.Patients` WHERE DATE(lastUpdated) = 'YYYY-MM-DD'
Consulta y analiza datos de FHIR en BigQuery
Después de exportar los recursos FHIR a BigQuery, consulta la solución Analiza datos de FHIR en BigQuery para obtener información sobre cómo consultar y analizar los datos exportados. El usa datos sintéticos generados por SyntheaTM en FHIR conjunto de datos públicos, que aloja más de 1 millón de registros sintéticos de pacientes generados en los formatos Synthea™ y FHIR.
Soluciona problemas de solicitudes de exportación de FHIR
Si se producen errores durante una solicitud de exportación de FHIR, estos se registrarán en Cloud Logging. Para obtener más información, consulta Visualiza los registros de errores en Cloud Logging.
Si toda la operación muestra un error, consulta Solución de problemas de operaciones de larga duración.
No se puede convertir la columna de NULLABLE a REPEATED
Este error se debe a una extensión repetida. Para resolver este error, usa el tipo de esquema ANALYTICS_V2
. Si ya usas ANALYTICS_V2
, es posible que tengas un
un conflicto entre dos extensiones o un conflicto entre una extensión y otra
.
Los nombres de las columnas se generan a partir del texto que aparece después del último carácter /
de
URLs de extensión. Si la URL de una extensión termina con un valor como
/resource_field name
, puede producirse un conflicto.
Para evitar que vuelva a ocurrir este error, no uses extensiones si su campo son los mismos que los campos de recursos que estás propagando.
¿Qué sigue?
- Para obtener más información sobre la seguridad y administración de datos en BigQuery, consulta Descripción general de la seguridad y la administración de los datos.