Exportar metadatos de DICOM a BigQuery

En esta página, se explica cómo exportar metadatos de DICOM a BigQuery para realizar exploraciones y análisis. Para obtener información sobre el esquema de BigQuery que se crea cuando se exportan metadatos de DICOM, consulta Comprende el esquema de DICOM de BigQuery.

Configura permisos de BigQuery

Antes de exportar metadatos de DICOM a una tabla de BigQuery, debes otorgar permisos adicionales a la cuenta de servicio del Agente de servicios de Cloud Healthcare. Para obtener más información, consulta Permisos de BigQuery para el almacén de DICOM.

Configura el destino 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
  • Si estableciste el campo force (con la API) o la marca --overwrite-table (con la CLI de Google Cloud)
  • Si ya estableciste un valor para la enumeración writeDisposition. Si usas la enumeración writeDisposition, no configures el campo force.
El comportamiento en cada uno de estos casos es el siguiente:
  • Si la tabla de destino ya existe y force se configura como true o si se especifica la marca --overwrite-table, la operación de exportación reemplaza la tabla existente.
  • Si la tabla de destino ya existe y force se establece en false o no se especifica la marca --overwrite-table, se produce un error.
  • Si la tabla de destino aún no existe, se crea una tabla nueva, sin importar si especificas el campo force o la marca --overwrite-table.
  • El comportamiento de writeDisposition se describe en su documentación. La enumeración writeDisposition realiza un comportamiento similar a las opciones cuando se usa force, con la siguiente excepción: si la tabla de destino ya existe y está vacía, la operación de exportación se completa en lugar de mostrar un error.

Exporta metadatos de DICOM

En los siguientes ejemplos, se muestra cómo exportar metadatos de DICOM a una tabla de BigQuery. En estas muestras, el almacén de DICOM y la tabla de BigQuery están en el mismo proyecto. Para exportar metadatos de DICOM a una tabla de BigQuery en otro proyecto, consulta Exporta metadatos de DICOM a un proyecto diferente.

Consola

Para exportar metadatos de DICOM a una tabla de BigQuery, completa los siguientes pasos:

  1. En la consola de Google Cloud, ve a la página Conjuntos de datos.

    Ir a Conjuntos de datos

  2. Haz clic en el conjunto de datos que tiene el almacén de DICOM con los metadatos que exportarás.

  3. En la misma fila que el almacén de DICOM, abre la lista Acciones y selecciona Exportar.

  4. En la página Exportar almacén de DICOM que aparece, selecciona Tabla de BigQuery.

  5. En el campo Proyecto, haz clic en Explorar y selecciona tu proyecto.

  6. En la lista Conjunto de datos, selecciona el conjunto de datos de BigQuery en el que exportas los metadatos de DICOM.

  7. En el campo Tabla, ingresa un nombre de tabla nuevo. BigQuery verifica cada selección para asegurarse de que la tabla de destino sea válida.

  8. En la sección Disposición de escritura de la tabla de destino, selecciona una de las siguientes opciones. Estas opciones corresponden a la enumeración WriteDisposition.

    • Solo exportar datos si la tabla de destino está vacía: Equivalente a WRITE_EMPTY.
    • Agregar datos a la tabla de destino: Equivalente a WRITE_APPEND
    • Borra todos los datos existentes en la tabla de destino antes de escribir las instancias: Equivalente a WRITE_TRUNCATE.
  9. Haz clic en Exportar para exportar los metadatos de DICOM a la tabla de BigQuery.

  10. 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.
    Si encuentras algún error, haz clic en Acciones y, luego, en Ver detalles en Cloud Logging.

gcloud

Para exportar metadatos de DICOM a una tabla de BigQuery, ejecuta el comando gcloud healthcare dicom-stores export bq.

  1. Exporta los metadatos de DICOM.

    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: El conjunto de datos superior del almacén de DICOM
    • DICOM_STORE_ID: El ID del almacén de DICOM
    • BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el que exportarás los metadatos de DICOM.
    • BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • write-empty: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Ejecuta el siguiente comando:

    Linux, macOS o Cloud Shell

    gcloud healthcare dicom-stores export bq DICOM_STORE_ID \
      --location=LOCATION \
      --dataset=DATASET_ID \
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID \
      --write-disposition=WRITE_DISPOSITION
    

    Windows (PowerShell)

    gcloud healthcare dicom-stores export bq DICOM_STORE_ID `
      --location=LOCATION `
      --dataset=DATASET_ID `
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID `
      --write-disposition=WRITE_DISPOSITION
    

    Windows (cmd.exe)

    gcloud healthcare dicom-stores export bq DICOM_STORE_ID ^
      --location=LOCATION ^
      --dataset=DATASET_ID ^
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID ^
      --write-disposition=WRITE_DISPOSITION
    
    La respuesta es la siguiente. La respuesta contiene un identificador para una operación de larga duración. Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar una cantidad considerable de tiempo en completarse. El comando sondea la operación de larga duración y, luego, muestra el nombre de la operación en el campo name una vez finalizada la exportación. Ten en cuenta el valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

    Respuesta

    Request issued for: [DICOM_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
    

  2. Para ver más detalles de la operación, ejecuta el 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.dicom.DicomService.ExportDicomData_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.protobuf.Empty'
    

REST

Para exportar metadatos de DICOM a una tabla de BigQuery, usa el método projects.locations.datasets.dicomStores.export.

  1. Exporta los metadatos de DICOM.

    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: El conjunto de datos superior del almacén de DICOM
    • DICOM_STORE_ID: El ID del almacén de DICOM
    • BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el que exportarás los metadatos de DICOM.
    • BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • WRITE_EMPTY: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Cuerpo JSON de la solicitud:

    {
      "bigqueryDestination": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "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": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "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/dicomStores/DICOM_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": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "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/dicomStores/DICOM_STORE_ID:export" | Select-Object -Expand Content

    Explorador de API

    Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de APIs 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.

    Este es el resultado. La respuesta contiene un identificador para una operación de larga duración (LRO). Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar más en completarse. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

  2. 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 Content

    Explorador de API

    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. Completa los campos obligatorios y haz clic en Ejecutar.

    Este es el resultado. Cuando la respuesta contiene "done": true, significa que la operación de larga duración finalizó.

Exporta metadatos de DICOM a un proyecto diferente

Para exportar metadatos de DICOM de un almacén de DICOM en un proyecto a un conjunto de datos de BigQuery en otro proyecto, primero consulta la sección sobre cómo exportar metadatos de DICOM a un permiso diferente del proyecto para obtener información sobre cómo configurar los permisos de IAM en el proyecto de destino.

gcloud

Para exportar metadatos de DICOM desde un almacén de DICOM en un proyecto a una tabla de BigQuery en otro proyecto, usa el comando gcloud healthcare dicom-stores export bq.

  1. Exporta los metadatos de DICOM.

    Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

    • SOURCE_PROJECT_ID: El ID del proyecto de Google Cloud de origen
    • SOURCE_LOCATION: La ubicación del conjunto de datos de origen
    • SOURCE_DATASET_ID: El conjunto de datos superior del almacén de DICOM de origen
    • SOURCE_DICOM_STORE_ID: El ID del almacén de DICOM de origen
    • DESTINATION_PROJECT_ID: El ID del proyecto diferente
    • DESTINATION_BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el proyecto de destino en el que exportarás los metadatos de DICOM.
    • DESTINATION_BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • write-empty: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Ejecuta el siguiente comando:

    Linux, macOS o Cloud Shell

    gcloud healthcare dicom-stores export bq SOURCE_DICOM_STORE_ID \
      --project=SOURCE_PROJECT_ID \
      --location=SOURCE_LOCATION \
      --dataset=SOURCE_DATASET_ID \
      --bq-table=bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID \
      --write-disposition=WRITE_DISPOSITION
    

    Windows (PowerShell)

    gcloud healthcare dicom-stores export bq SOURCE_DICOM_STORE_ID `
      --project=SOURCE_PROJECT_ID `
      --location=SOURCE_LOCATION `
      --dataset=SOURCE_DATASET_ID `
      --bq-table=bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID `
      --write-disposition=WRITE_DISPOSITION
    

    Windows (cmd.exe)

    gcloud healthcare dicom-stores export bq SOURCE_DICOM_STORE_ID ^
      --project=SOURCE_PROJECT_ID ^
      --location=SOURCE_LOCATION ^
      --dataset=SOURCE_DATASET_ID ^
      --bq-table=bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID ^
      --write-disposition=WRITE_DISPOSITION
    
    La respuesta es la siguiente. La respuesta contiene un identificador para una operación de larga duración. Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar una cantidad considerable de tiempo en completarse. El comando sondea la operación de larga duración y, luego, muestra el nombre de la operación en el campo name una vez finalizada la exportación. Ten en cuenta el valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

    Respuesta

    Request issued for: [SOURCE_DICOM_STORE_ID]
    Waiting for operation [projects/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/operations/OPERATION_ID] to complete...⠏
    name: projects/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/operations/OPERATION_ID
    

  2. Para ver más detalles de la operación, ejecuta el 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:

    • SOURCE_PROJECT_ID: El ID del proyecto de Google Cloud de origen
    • SOURCE_LOCATION: La ubicación del conjunto de datos de origen
    • SOURCE_DATASET_ID: El ID del conjunto de datos de origen
    • 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=SOURCE_PROJECT_ID \
        --dataset=SOURCE_DATASET_ID \
        --location=SOURCE_LOCATION
    

    Windows (PowerShell)

    gcloud healthcare operations describe OPERATION_ID `
        --project=SOURCE_PROJECT_ID `
        --dataset=SOURCE_DATASET_ID `
        --location=SOURCE_LOCATION
    

    Windows (cmd.exe)

    gcloud healthcare operations describe OPERATION_ID ^
        --project=SOURCE_PROJECT_ID ^
        --dataset=SOURCE_DATASET_ID ^
        --location=SOURCE_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.dicom.DicomService.ExportDicomData_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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/operations/OPERATION_ID
    // The `response` field only displays if there were no errors.
    response:
      '@type': 'type.googleapis.com/google.protobuf.Empty'
    

REST

Para exportar metadatos de DICOM desde un almacén de DICOM en un proyecto a una tabla de BigQuery en otro proyecto, usa el método projects.locations.datasets.dicomStores.export.

  1. Exporta los metadatos de DICOM.

    Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

    • SOURCE_PROJECT_ID: El ID del proyecto de Google Cloud de origen
    • SOURCE_LOCATION: La ubicación del conjunto de datos de origen
    • SOURCE_DATASET_ID: El conjunto de datos superior del almacén de DICOM de origen
    • SOURCE_DICOM_STORE_ID: El ID del almacén de DICOM de origen
    • DESTINATION_PROJECT_ID: El ID del proyecto diferente
    • DESTINATION_BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el proyecto de destino en el que exportarás los metadatos de DICOM.
    • DESTINATION_BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • WRITE_EMPTY: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Cuerpo JSON de la solicitud:

    {
      "bigqueryDestination": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "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": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/dicomStores/SOURCE_DICOM_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": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/dicomStores/SOURCE_DICOM_STORE_ID:export" | Select-Object -Expand Content

    Explorador de API

    Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de APIs 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.

    Este es el resultado. La respuesta contiene un identificador para una operación de larga duración (LRO). Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar más en completarse. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

  2. 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:

    • SOURCE_PROJECT_ID: El ID del proyecto de Google Cloud de origen
    • SOURCE_LOCATION: La ubicación del conjunto de datos de origen
    • SOURCE_DATASET_ID: El ID del conjunto de datos de origen
    • 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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content

    Explorador de API

    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. Completa los campos obligatorios y haz clic en Ejecutar.

    Este es el resultado. Cuando la respuesta contiene "done": true, significa que la operación de larga duración finalizó.

Exportar metadatos de DICOM mediante filtros

De forma predeterminada, cuando exportas archivos de DICOM a Cloud Storage, se exportan todos los archivos de DICOM en el almacén de DICOM especificado. Del mismo modo, cuando exportas metadatos de DICOM a BigQuery, se exportan los metadatos de todos los datos de DICOM en el almacén de DICOM especificado.

Puedes exportar un subconjunto de datos o metadatos de DICOM mediante un filtro. Debes definir el filtro en un archivo de filtro.

Configura archivos de filtro

Un archivo de filtro define qué archivos DICOM que se exportarán a Cloud Storage o BigQuery. Puedes configurar archivos en los siguientes niveles:

  • A nivel del estudio
  • En el nivel de la serie
  • En el nivel de la instancia

El archivo de filtro está compuesto por varias líneas y cada línea define el estudio, la serie o la instancia que quieres exportar. Cada línea usa el formato /studies/STUDY_UID[/series/SERIES_UID[/instances/INSTANCE_UID]].

Si no se especifica un estudio, una serie o una instancia en el archivo de filtro cuando pasas el archivo de filtro, no se exportará ese estudio, serie ni instancia.

Solo se requiere la parte /studies/STUDY_UID de la ruta de acceso. Puedes exportar un estudio completo si especificas /studies/STUDY_UID o puedes exportar una serie completa si especificas /studies/STUDY_UID/series/SERIES_UID.

Considera el siguiente archivo de filtro. El archivo de filtro dará como resultado que se exporten un estudio, dos series y tres instancias individuales:

/studies/1.123.456.789
/studies/1.666.333.111/series/123.456
/studies/1.666.333.111/series/567.890
/studies/1.888.999.222/series/123.456/instances/111
/studies/1.888.999.222/series/123.456/instances/222
/studies/1.888.999.222/series/123.456/instances/333

Crea un archivo de filtro con BigQuery

Por lo general, para crear un archivo de filtro, primero debes exportar los metadatos de un almacén de DICOM a BigQuery. Esto te permite usar BigQuery para ver los UID del estudio, serie y de las instancias de los datos de DICOM en tu almacén de DICOM. A continuación, puedes completar los siguientes pasos:

  1. Realiza consultas para los UID del estudio, la serie y la instancia que te interesa. Por ejemplo, después de exportar los metadatos de DICOM a BigQuery, puedes ejecutar la siguiente consulta para concatenar los UID del estudio, la serie y la instancia en un formato compatible con los requisitos del archivo de filtro:
    SELECT CONCAT
        ('/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID)
    FROM
        [PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE]
    
  2. Si la consulta muestra un conjunto de resultados grande, puedes materializar una tabla nueva si guardas los resultados de las consultas en una tabla de destino en BigQuery.
  3. Si guardaste los resultados de la consulta en una tabla de destino, puedes guardar el contenido de la tabla de destino en un archivo y exportarlo a Cloud Storage. Si quieres obtener los pasos para hacerlo, consulta Exporta datos de tablas. El archivo exportado es tu archivo de filtro. Usarás la ubicación del archivo de filtro en Cloud Storage cuando especifiques el filtro en la operación de exportación.

Crea un archivo de filtro de forma manual

Puedes crear un archivo de filtro con contenido personalizado y subirlo a un bucket de Cloud Storage. Usarás la ubicación del archivo de filtro en Cloud Storage cuando especifiques el filtro en la operación de exportación. En el siguiente ejemplo, se muestra cómo subir un archivo de filtro a un bucket de Cloud Storage con el comando gsutil cp:
gsutil cp FILTER_FILE gs://BUCKET

Pasa el archivo de filtro

Después de crear un archivo de filtro, puedes llamar a la operación de exportación de DICOM y pasar el archivo de filtro con la API de REST. En los siguientes ejemplos, se muestra cómo exportar metadatos de DICOM con un filtro.

gcloud

Para exportar metadatos de DICOM a una tabla de BigQuery con un filtro, ejecuta el comando gcloud beta healthcare dicom-stores export bq.

  1. Exporta los metadatos de DICOM.

    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: El conjunto de datos superior del almacén de DICOM
    • DICOM_STORE_ID: El ID del almacén de DICOM
    • BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el que exportarás los metadatos de DICOM.
    • BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • BUCKET: El nombre del bucket de Cloud Storage que contiene el archivo de filtro. Si el archivo de filtro está en un directorio, incluye el directorio en la ruta.
    • FILTER_FILE: La ubicación y el nombre del archivo de filtro en un bucket de Cloud Storage.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • write-empty: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Ejecuta el siguiente comando:

    Linux, macOS o Cloud Shell

    gcloud beta healthcare dicom-stores export bq DICOM_STORE_ID \
      --location=LOCATION \
      --dataset=DATASET_ID \
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID \
      --filter-config-gcs-uri=gs://BUCKET/FILTER_FILE \
      --write-disposition=WRITE_DISPOSITION
    

    Windows (PowerShell)

    gcloud beta healthcare dicom-stores export bq DICOM_STORE_ID `
      --location=LOCATION `
      --dataset=DATASET_ID `
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID `
      --filter-config-gcs-uri=gs://BUCKET/FILTER_FILE `
      --write-disposition=WRITE_DISPOSITION
    

    Windows (cmd.exe)

    gcloud beta healthcare dicom-stores export bq DICOM_STORE_ID ^
      --location=LOCATION ^
      --dataset=DATASET_ID ^
      --bq-table=bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID ^
      --filter-config-gcs-uri=gs://BUCKET/FILTER_FILE ^
      --write-disposition=WRITE_DISPOSITION
    
    La respuesta es la siguiente. La respuesta contiene un identificador para una operación de larga duración. Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar una cantidad considerable de tiempo en completarse. El comando sondea la operación de larga duración y, luego, muestra el nombre de la operación en el campo name una vez finalizada la exportación. Ten en cuenta el valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

    Respuesta

    Request issued for: [DICOM_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
    

  2. Para ver más detalles de la operación, ejecuta el 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.dicom.DicomService.ExportDicomData_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/SOURCE_PROJECT_ID/locations/SOURCE_LOCATION/datasets/SOURCE_DATASET_ID/operations/OPERATION_ID
    // The `response` field only displays if there were no errors.
    response:
      '@type': 'type.googleapis.com/google.protobuf.Empty'
    

REST

Para exportar metadatos de DICOM a una tabla de BigQuery con un filtro, usa el método projects.locations.datasets.dicomStores.export.

  1. Exporta los metadatos de DICOM.

    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: El conjunto de datos superior del almacén de DICOM
    • DICOM_STORE_ID: El ID del almacén de DICOM
    • BIGQUERY_DATASET_ID: El nombre de un conjunto de datos de BigQuery existente en el que exportarás los metadatos de DICOM.
    • BIGQUERY_TABLE_ID: El nombre de una tabla nueva o existente en el conjunto de datos de BigQuery. Si la operación de exportación crea una tabla nueva, consulta Nombres de tablas para conocer los requisitos de nombres de tablas.
    • BUCKET: El nombre del bucket de Cloud Storage que contiene el archivo de filtro. Si el archivo de filtro está en un directorio, incluye el directorio en la ruta.
    • FILTER_FILE: La ubicación y el nombre del archivo de filtro en un bucket de Cloud Storage.
    • WRITE_DISPOSITION: Un valor para la enumeración WriteDisposition. Usa uno de los siguientes valores:
      • WRITE_EMPTY: Solo exporta 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: Agrega datos a la tabla de BigQuery.

    Cuerpo JSON de la solicitud:

    {
      "bigqueryDestination": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      },
      "filterConfig": {
          "resourcePathsGcsUri": "gs://BUCKET/FILTER_FILE"
      }
    }
    

    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": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      },
      "filterConfig": {
          "resourcePathsGcsUri": "gs://BUCKET/FILTER_FILE"
      }
    }
    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/dicomStores/DICOM_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": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      },
      "filterConfig": {
          "resourcePathsGcsUri": "gs://BUCKET/FILTER_FILE"
      }
    }
    '@  | 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/dicomStores/DICOM_STORE_ID:export" | Select-Object -Expand Content

    Explorador de API

    Copia el cuerpo de la solicitud y abre la página de referencia del método. El panel del Explorador de APIs 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.

    Este es el resultado. La respuesta contiene un identificador para una operación de larga duración (LRO). Las operaciones de larga duración se muestran cuando las llamadas de métodos pueden tardar más en completarse. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el paso siguiente.

  2. 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 Content

    Explorador de API

    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. Completa los campos obligatorios y haz clic en Ejecutar.

    Este es el resultado. Cuando la respuesta contiene "done": true, significa que la operación de larga duración finalizó.

Consulta y analiza datos de DICOM en BigQuery

Después de exportar los metadatos de DICOM a una tabla de BigQuery, puedes ejecutar consultas de muestra para obtener más detalles sobre los metadatos. En los siguientes ejemplos, se muestra cómo ejecutar consultas para algunos casos de uso comunes.

Busca en los metadatos

Supongamos que quieres buscar en una gran cantidad de metadatos que son difíciles de buscar en otros sistemas, como un sistema de archivo y comunicación de imágenes (PACS) o un archivo neutral del proveedor (VNA). En la siguiente consulta, se muestra cómo consultar el valor PatientID de un paciente y usar la ruta de DICOMweb para recuperar instancias de imágenes específicas. La muestra usa la tabla chc-nih-chest-xray.nih_chest_xray.nih_chest_xray del conjunto de datos de radiografías de tórax de los NIH.

#standardSQL
SELECT CONCAT('/dicomWeb/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID) as DICOMwebPath
FROM `chc-nih-chest-xray.nih_chest_xray.nih_chest_xray`
WHERE PatientID = '19045';

La consulta muestra los estudios asociados con el paciente. La siguiente respuesta usa formato JSON:

[
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.169629990647803559688464142879817265366193/series/1.3.6.1.4.1.11129.5.5.141990184899344268273968625887396932057061/instances/1.3.6.1.4.1.11129.5.5.162448513493627342869165322873398445570578"
  },
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.114160532832901355654444239008681456919023/series/1.3.6.1.4.1.11129.5.5.178361108150351071908200174504411112440700/instances/1.3.6.1.4.1.11129.5.5.145959606905209488520697484018030440952428"
  },
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.177801331756958922168115732894519725643007/series/1.3.6.1.4.1.11129.5.5.134128639331055702643451404466208677561042/instances/1.3.6.1.4.1.11129.5.5.148534317486838863760908141408862094292875"
  },
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.119570482687494886334491471870663517807852/series/1.3.6.1.4.1.11129.5.5.148050768676645373034111775531663876425927/instances/1.3.6.1.4.1.11129.5.5.111153708388576066195389700503245704293300"
  },
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.144704399171290022427247626928443085419319/series/1.3.6.1.4.1.11129.5.5.190285793344339390593165731988543561416633/instances/1.3.6.1.4.1.11129.5.5.110245902713751842026864359179754889505217"
  },
  {
    "DICOMwebPath": "/dicomWeb/studies/1.3.6.1.4.1.11129.5.5.172276126220388966649736649950361623806435/series/1.3.6.1.4.1.11129.5.5.171512371498506519035489729484464872160452/instances/1.3.6.1.4.1.11129.5.5.111721417729733087384317002785068394901165"
  }
]

Consulta los estudios más recientes

Supongamos que quieres propagar una lista de trabajo de lectura de PACS con los estudios más recientes de tu conjunto de datos.

En la siguiente consulta, se muestra cómo recuperar y mostrar los estudios más recientes junto con los recuentos de instancias y los metadatos circundantes. En la muestra, se usa la tabla bigquery-public-data.idc_v5.dicom_metadata del conjunto de datos TCIA.

#standardSQL
SELECT
  MIN(CONCAT(StudyDate, ' ', StudyTime)) as StudyDateTime, MIN(PatientID) as PatientID, StudyInstanceUID, COUNT(*) as InstanceCount
FROM
 `bigquery-public-data.idc_v5.dicom_metadata` AS dicom
GROUP BY StudyInstanceUID
ORDER BY StudyDateTime DESC
LIMIT 10;

La consulta muestra la siguiente información:

  • Los 10 estudios más recientes que ingresaron al sistema y cuándo lo hicieron
  • El paciente asociado con cada estudio
  • El UID del estudio
  • La cantidad de instancias asociadas con el estudio

La siguiente respuesta usa formato JSON:

[
  {
    "StudyDateTime": "2021-07-11 00:38:22",
    "PatientID": "C3L-01924",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2466232160.763753303.1625963902816.3.0",
    "InstanceCount": "4"
  }, {
    "StudyDateTime": "2021-07-10 23:52:10",
    "PatientID": "C3L-01924",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2463459463.1074873794.1625961130119.3.0",
    "InstanceCount": "4"
  }, {
    "StudyDateTime": "2021-07-10 23:31:13",
    "PatientID": "C3L-02513",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2462202516.1453336368.1625959873172.3.0",
    "InstanceCount": "7"
  }, {
    "StudyDateTime": "2021-07-10 23:25:17",
    "PatientID": "C3L-01924",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2461846936.496969835.1625959517592.3.0",
    "InstanceCount": "4"
  }, {
    "StudyDateTime": "2021-07-10 22:35:16",
    "PatientID": "C3L-02515",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2458845347.1905567435.1625956516003.3.0",
    "InstanceCount": "6"
  }, {
    "StudyDateTime": "2021-07-10 21:49:46",
    "PatientID": "C3L-02515",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2456116127.1264613559.1625953786783.3.0",
    "InstanceCount": "7"
  }, {
    "StudyDateTime": "2021-07-10 21:46:04",
    "PatientID": "C3L-02513",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2455894080.1705479047.1625953564736.3.0",
    "InstanceCount": "6"
  }, {
    "StudyDateTime": "2021-07-10 21:13:30",
    "PatientID": "C3L-01924",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2453939652.2052768474.1625951610308.3.0",
    "InstanceCount": "4"
  }, {
    "StudyDateTime": "2021-07-10 21:10:17",
    "PatientID": "C3L-02515",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2453746219.164669562.1625951416875.3.0",
    "InstanceCount": "6"
  }, {
    "StudyDateTime": "2021-07-10 20:05:48",
    "PatientID": "C3L-02513",
    "StudyInstanceUID": "1.3.6.1.4.1.5962.99.1.2449877792.1996682667.1625947548448.3.0",
    "InstanceCount": "6"
  }
]

Limitaciones y comportamientos adicionales

Si la etiqueta de DICOM no tiene un tipo compatible en BigQuery (que aparece en la lista de RV excluidas), puede aparecer en una columna separada (llamada DroppedTags.TagName) en la tabla de BigQuery de destino o puede excluirse por completo. Las etiquetas de DICOM que superen aproximadamente 1 MB se excluirán por completo.

Soluciona problemas de solicitudes de exportación de DICOM

Si se producen errores durante una solicitud de exportación de DICOM a BigQuery, se registran en Cloud Logging. Para obtener más información, consulta Visualiza los registros de errores en Cloud Logging.