Cambiar la clase de almacenamiento de DICOM

En esta página, se describe cómo cambiar la clase de almacenamiento de los datos de DICOM en la API de Cloud Healthcare.

Descripción general

La API de Cloud Healthcare ofrece las siguientes clases de almacenamiento:

  • Estándar
  • Nearline
  • Coldline
  • Archivar

Estas clases de almacenamiento son similares a las que se encuentran en Cloud Storage.

Puedes cambiar la clase de almacenamiento de tu objeto de DICOM como medida de ahorro en situaciones como las siguientes:

  • Mover una serie de imágenes de DICOM de acceso poco frecuente de Standard Storage a Nearline o Coldline Storage Esto libera los buckets de Standard Storage para almacenar imágenes a las que se accede con más frecuencia.
  • Mover datos de pacientes de Standard Storage a Archive Storage para archivar datos que deben conservarse por motivos legales. Archive Storage es la clase de almacenamiento de menor costo con alta durabilidad.

Métodos para cambiar la clase de almacenamiento de DICOM

De forma predeterminada, una instancia de DICOM tiene una clase de almacenamiento estándar. Puedes cambiar la clase de almacenamiento con los siguientes métodos:

  • Método import: Establece la clase de almacenamiento cuando importas una instancia de DICOM desde un bucket de Cloud Storage con el campo blobStorageSettings.
  • Método storeInstances: Permite establecer la clase de almacenamiento cuando almacenas una instancia de DICOM desde una ruta de acceso local.
  • Método setBlobStorageSettings: Cambia la clase de almacenamiento de una instancia de DICOM en un almacén de DICOM a nivel de instancia, serie o estudio.

Antes de comenzar

Antes de cambiar la clase de almacenamiento de tus instancias de DICOM en la API de Cloud Healthcare, revisa los siguientes detalles de precios:

Cambiar la clase de almacenamiento de una instancia de DICOM

En los siguientes ejemplos, se muestra cómo cambiar la clase de almacenamiento de una instancia de DICOM a nivel de instancia, serie o estudio.

A nivel de instancia

Para cambiar la clase de almacenamiento de una instancia de DICOM a nivel de instancia, completa estos pasos:

REST

Usa el método projects.locations.datasets.dicomStores.studies.series.instances.setBlobStorageSettings.

  1. Cambiar la clase de almacenamiento de la instancia de DICOM a nivel de la instancia

    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
    • STUDY_INSTANCE_UID: Es el identificador único de la instancia del estudio.
    • SERIES_INSTANCE_UID: Es el identificador único de la instancia de la serie.
    • INSTANCE_UID: Es el identificador único de la instancia.
    • STORAGE_CLASS: Es la clase de almacenamiento del objeto de DICOM en el almacén de DICOM de STANDARD, NEARLINE, COLDLINE y ARCHIVE.

    Cuerpo JSON de la solicitud:

    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    

    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'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    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" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID/instance/INSTANCE_UID:setBlobStorageSettings"

    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:

    @'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    '@  | 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" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID/instance/INSTANCE_UID:setBlobStorageSettings" | Select-Object -Expand Content
    Este es el resultado. 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. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el siguiente paso.
  2. Obtén 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.
    • LOCATION: La ubicación del conjunto de datos
    • DATASET_ID: El conjunto de datos superior del almacén de DICOM
    • 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/v1beta1/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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content
    Si la operación de larga duración aún está en ejecución, el servidor muestra una respuesta con la cantidad de instancias de DICOM pendientes de cambio de clase de almacenamiento. Cuando la LRO finaliza de forma correcta, el servidor muestra una respuesta con el estado de la operación en formato JSON:

A nivel de la serie

Para cambiar la clase de almacenamiento de una instancia de DICOM a nivel de la serie, completa estos pasos:

REST

Usa el método projects.locations.datasets.dicomStores.studies.series.setBlobStorageSettings.

  1. Cambiar la clase de almacenamiento de la instancia de DICOM a nivel de la serie

    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
    • STUDY_INSTANCE_UID: Es el identificador único de la instancia del estudio.
    • SERIES_INSTANCE_UID: Es el identificador único de la instancia de la serie.
    • STORAGE_CLASS: Es la clase de almacenamiento del objeto de DICOM en el almacén de DICOM de STANDARD, NEARLINE, COLDLINE y ARCHIVE.

    Cuerpo JSON de la solicitud:

    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    

    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'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    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" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID:setBlobStorageSettings"

    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:

    @'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    '@  | 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" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID:setBlobStorageSettings" | Select-Object -Expand Content
    Este es el resultado. 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. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el siguiente paso.
  2. Obtén 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.
    • LOCATION: La ubicación del conjunto de datos
    • DATASET_ID: El conjunto de datos superior del almacén de DICOM
    • 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/v1beta1/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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content
    Si la operación de larga duración aún está en ejecución, el servidor muestra una respuesta con la cantidad de instancias de DICOM pendientes de cambio de clase de almacenamiento. Cuando la LRO finaliza de forma correcta, el servidor muestra una respuesta con el estado de la operación en formato JSON:

A nivel de estudio

Para cambiar la clase de almacenamiento de una instancia de DICOM a nivel de estudio, completa estos pasos:

REST

Usa el método projects.locations.datasets.dicomStores.studies.setBlobStorageSettings.

  1. Cambiar la clase de almacenamiento de la instancia de DICOM a nivel del estudio

    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
    • STUDY_INSTANCE_UID: Es el identificador único de la instancia del estudio.
    • STORAGE_CLASS: Es la clase de almacenamiento del objeto de DICOM en el almacén de DICOM de STANDARD, NEARLINE, COLDLINE y ARCHIVE.

    Cuerpo JSON de la solicitud:

    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    

    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'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    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" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID:setBlobStorageSettings"

    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:

    @'
    {
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    '@  | 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" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID:setBlobStorageSettings" | Select-Object -Expand Content
    Este es el resultado. 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. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el siguiente paso.
  2. Obtén 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.
    • LOCATION: La ubicación del conjunto de datos
    • DATASET_ID: El conjunto de datos superior del almacén de DICOM
    • 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/v1beta1/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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content
    Si la operación de larga duración aún está en ejecución, el servidor muestra una respuesta con la cantidad de instancias de DICOM pendientes de cambio de clase de almacenamiento. Cuando la LRO finaliza de forma correcta, el servidor muestra una respuesta con el estado de la operación en formato JSON:

Usa filtros

En la siguiente sección, se muestra cómo filtrar instancias específicas y cambiar su clase de almacenamiento a nivel de estudio, serie o instancia con un archivo de filtro.

Debes agregar el rol Visualizador de objetos de Storage a la cuenta de servicio Agente de servicio de Healthcare, que tiene acceso al bucket en el que se almacena el archivo de filtro.

Configura un archivo de filtro

Con un archivo de filtro, puedes definir la lista de archivos de DICOM cuya clase de almacenamiento se debe cambiar.

Cada línea del archivo de filtro define el estudio, la serie o la instancia, y usa el formato /studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID/instances/INSTANCE_UID.

Puedes truncar una línea para especificar el nivel en el que funciona el filtro. Por ejemplo, puedes cambiar la clase de almacenamiento de un estudio completo si especificas /studies/STUDY_INSTANCE_UID, o puedes cambiar la clase de almacenamiento de una serie completa si especificas /studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID.

Considera el siguiente archivo de filtro:

/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

Este archivo de filtro tiene como resultado filtrar lo siguiente:

  • Todo el estudio con el UID de la instancia de estudio como 1.123.456.789
  • Dos series separadas con UID de instancia de serie como 123.456 y 567.890 en el estudio 1.666.333.111
  • Tres instancias individuales con los IDs de instancia 111, 222 y 333 en el estudio 1.888.999.222 y la serie 123.456

Crea un archivo de filtro con BigQuery

Para crear un archivo de filtro con BigQuery, debes exportar los metadatos de tu almacén de DICOM a BigQuery. Los metadatos exportados te muestran el estudio, la serie y los UID de instancia de los datos de DICOM en tu almacén de DICOM.

Después de la exportación, completa los siguientes pasos:

  1. Consulta los UIDs de estudio, serie y instancia que se requieren.

    Por ejemplo, después de exportar metadatos de DICOM a BigQuery, ejecuta la siguiente consulta para concatenar los UID del estudio, la serie y la instancia a fin de que coincidan con los requisitos de formato de archivo del filtro:

    SELECT CONCAT
        ('/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID)
    FROM
        [PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE]
    
  2. Opcional: Si la consulta muestra un conjunto grande de resultados que excede el tamaño máximo de respuesta, guarda los resultados de la consulta en una tabla de destino nueva en BigQuery.

  3. Guarda los resultados de la consulta en un archivo y expórtalos a Cloud Storage. Si guardaste los resultados de la consulta en una tabla de destino nueva en el Paso 2, consulta Exporta datos de tablas para exportar el contenido de la tabla a Cloud Storage.

  4. Edita el archivo exportado según sea necesario y úsalo como archivo de filtro. La ubicación del archivo de filtro en Cloud Storage es obligatoria en el método setBlobStorageSettings.

Crear un archivo de filtro de forma manual

Para crear un archivo de filtro con contenido personalizado y subirlo a un bucket de Cloud Storage, completa estos pasos:

  1. Crea un archivo de filtro que contenga una lista de instancias cuya clase de almacenamiento debe cambiarse en tu máquina local. Usa el formato que se describe en la sección Configura el archivo de filtros.

  2. Sube el archivo de texto de filtro a una ubicación de Cloud Storage.

    gsutil cp PATH_TO_FILTER_FILE/FILTER_FILE_NAME.txt gs://BUCKET/DIRECTORY
    

    Reemplaza lo siguiente:

    • PATH_TO_FILTER_FILE: Es la ruta de acceso al archivo de filtro en tu máquina local.
    • FILTER_FILE_NAME: Es el nombre del archivo de filtro.
    • BUCKET/DIRECTORY: Es la ruta de acceso a la ubicación de Cloud Storage.

    Por ejemplo:

    gsutil cp my-local-folder/archive-filters.txt gs://my-bucket/my-directory
    

Pasa el archivo de filtro

REST

  1. Usa el método projects.locations.datasets.dicomStores.studies.setBlobStorageSettings para cambiar la clase de almacenamiento de todas las instancias en el archivo de filtro a nivel de almacén 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
    • STORAGE_CLASS: Es la clase de almacenamiento del objeto de DICOM en el almacén de DICOM de STANDARD, NEARLINE, COLDLINE y ARCHIVE.
    • BUCKET/DIRECTORY

    Cuerpo JSON de la solicitud:

    {
      "filter_config": {
        "resource_paths_gcs_uri": "gs://BUCKET/DIRECTORY"
      },
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    

    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'
    {
      "filter_config": {
        "resource_paths_gcs_uri": "gs://BUCKET/DIRECTORY"
      },
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    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" \
    -d @request.json \
    "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:setBlobStorageSettings"

    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:

    @'
    {
      "filter_config": {
        "resource_paths_gcs_uri": "gs://BUCKET/DIRECTORY"
      },
      "blobStorageSettings": {
        "blob_storage_class": "STORAGE_CLASS"
      }
    }
    '@  | 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" `
    -InFile request.json `
    -Uri "https://healthcare.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID:setBlobStorageSettings" | Select-Object -Expand Content
    Este es el resultado. 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. Toma nota del valor de OPERATION_ID. Necesitarás este valor en el siguiente paso.

  2. Obtén 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.
    • LOCATION: La ubicación del conjunto de datos
    • DATASET_ID: El conjunto de datos superior del almacén de DICOM
    • 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/v1beta1/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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" | Select-Object -Expand Content
    Si la operación de larga duración aún está en ejecución, el servidor muestra una respuesta con la cantidad de instancias de DICOM pendientes de cambio de clase de almacenamiento. Cuando la LRO finaliza de forma correcta, el servidor muestra una respuesta con el estado de la operación en formato JSON:

Verifica la clase de almacenamiento de una instancia de DICOM

Usa el método getStorageInfo

En los siguientes ejemplos, se muestra cómo visualizar la clase de almacenamiento de una instancia de DICOM.

REST

Usa el método projects.locations.datasets.dicomStores.dicomWeb.studies.series.instances.getStorageInfo.

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
  • STUDY_INSTANCE_UID: Es el identificador único de la instancia del estudio.
  • SERIES_INSTANCE_UID: Es el identificador único de la instancia de la serie.
  • INSTANCE_UID: Es el identificador único de la instancia.

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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID/instances/INSTANCE_UID:getStorageInfo"

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/v1beta1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID/dicomWeb/studies/STUDY_INSTANCE_UID/series/SERIES_INSTANCE_UID/instances/INSTANCE_UID:getStorageInfo" | Select-Object -Expand Content

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

Consultar metadatos de DICOM exportados en BigQuery

También puedes exportar metadatos de DICOM a BigQuery y consultar el conjunto de datos de BigQuery para ver las clases de almacenamiento de las instancias de DICOM.

Por ejemplo, puedes ejecutar la siguiente consulta para ver el UID de la instancia de estudio, el UID de la instancia de la serie, el UID de la instancia, el tamaño de almacenamiento del BLOB y la clase de almacenamiento del BLOB de todas las instancias en tu conjunto de datos de BigQuery:

SELECT StudyInstanceUID,SeriesInstanceUID,SOPInstanceUID,BlobStorageSize,StorageClass FROM PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE LIMIT 1000