Esportazione dei metadati DICOM in BigQuery

In questa pagina viene spiegato come esportare i metadati DICOM in BigQuery ai fini dell'approfondimento e dell'analisi. Per informazioni sullo schema di BigQuery creato durante l'esportazione dei metadati DICOM, consulta Informazioni sullo schema DICOM di BigQuery.

Impostazione delle autorizzazioni BigQuery

Prima di esportare i metadati DICOM in una tabella BigQuery, devi concedere autorizzazioni aggiuntive all'account di servizio dell'agente di servizio Cloud Healthcare. Per ulteriori informazioni, consulta Autorizzazioni BigQuery per gli archivi DICOM.

Impostazione della destinazione BigQuery

Quando imposti la destinazione BigQuery, utilizza l'URI completamente qualificato, come segue:
bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID
Il comportamento dell'operazione di esportazione può variare a seconda di:
  • Indica se la tabella di destinazione esiste già
  • Se hai impostato il campo force (utilizzando l'API) o il flag --overwrite-table (utilizzando Google Cloud CLI)
  • Indica se hai impostato un valore per l'enum writeDisposition. Se utilizzi l'enum writeDisposition, non impostare il campo force.
Il comportamento in ciascuno di questi casi è il seguente:
  • Se la tabella di destinazione esiste già e force è impostato su true o se è specificato il flag --overwrite-table, l'operazione di esportazione sovrascrive la tabella esistente.
  • Se la tabella di destinazione esiste già e force è impostato su false o se non è specificato il flag --overwrite-table, si verifica un errore.
  • Se la tabella di destinazione non esiste già, viene creata una nuova tabella, indipendentemente dal fatto che tu specifichi il campo force o il flag --overwrite-table.
  • Il comportamento di writeDisposition è descritto nella relativa documentazione. L'enum writeDisposition ha un comportamento simile alle opzioni quando si utilizza force, con la seguente eccezione: se la tabella di destinazione esiste già ed è vuota, l'operazione di esportazione viene completata anziché restituire un errore.

Esportazione dei metadati DICOM

Gli esempi riportati di seguito mostrano come esportare i metadati DICOM in una tabella BigQuery. In questi esempi, l'archivio DICOM e la tabella BigQuery si trovano nello stesso progetto. Per esportare i metadati DICOM in una tabella BigQuery di un altro progetto, consulta Esportazione dei metadati DICOM in un altro progetto.

Console

Per esportare i metadati DICOM in una tabella BigQuery, completa i seguenti passaggi:

  1. Nella console Google Cloud, vai alla pagina Set di dati.

    Vai a Set di dati

  2. Fai clic sul set di dati contenente l'archivio DICOM con i metadati che stai esportando.

  3. Nella stessa riga dell'archivio DICOM, apri l'elenco Azioni e seleziona Esporta.

  4. Nella pagina Esporta archivio DICOM visualizzata, seleziona Tabella BigQuery.

  5. Nel campo Progetto, fai clic su Sfoglia e seleziona il progetto.

  6. Nell'elenco Set di dati, seleziona il set di dati BigQuery in cui esporti i metadati DICOM.

  7. Nel campo Table (Tabella), inserisci un nuovo nome per la tabella. BigQuery controlla ogni selezione per assicurarsi che la tabella di destinazione sia valida.

  8. Nella sezione Disposizione scrittura tabella di destinazione, seleziona una delle seguenti opzioni. Queste opzioni corrispondono all'enum WriteDisposition.

    • Esporta i dati solo se la tabella di destinazione è vuota: equivalente a WRITE_EMPTY
    • Aggiungi i dati alla tabella di destinazione: equivalente a WRITE_APPEND
    • Cancella tutti i dati esistenti nella tabella di destinazione prima di scrivere le istanze: equivalente a WRITE_TRUNCATE.
  9. Fai clic su Esporta per esportare i metadati DICOM nella tabella BigQuery.

  10. Per monitorare lo stato dell'operazione, fai clic sulla scheda Operazioni. Al termine dell'operazione, vengono visualizzate le seguenti indicazioni:
    • La sezione Stato operazione a lunga esecuzione è contrassegnata da un segno di spunta verde sotto l'intestazione OK.
    • Nella sezione Panoramica è presente un segno di spunta verde e un indicatore OK nella stessa riga dell'ID operazione.
    In caso di errore, fai clic su Azioni e poi su Visualizza dettagli in Cloud Logging.

gcloud

Per esportare i metadati DICOM in una tabella BigQuery, esegui il comando gcloud healthcare dicom-stores export bq.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • LOCATION: la posizione del set di dati
    • DATASET_ID: il set di dati principale dell'archivio DICOM
    • DICOM_STORE_ID: l'ID dell'archivio DICOM
    • BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente in cui esporti i metadati DICOM
    • BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • write-empty: esporta i dati solo se la tabella BigQuery è vuota.
      • write-truncate: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • write-append: accoda i dati alla tabella BigQuery.

    Esegui il seguente 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 risposta è la seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. Il comando esegue il polling dell'operazione a lunga esecuzione, quindi stampa il nome dell'operazione nel campo name al termine dell'esportazione. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

    Risposta

    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. Per visualizzare ulteriori dettagli sull'operazione, esegui il comando gcloud healthcare operations describe e fornisci il valore OPERATION_ID della risposta:

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • DATASET_ID: l'ID set di dati
    • LOCATION: la posizione del set di dati
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Esegui il seguente 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

    Dovresti ricevere una risposta simile alla seguente:

    Risposta

    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

Per esportare i metadati DICOM in una tabella BigQuery, utilizza il metodo projects.locations.datasets.dicomStores.export.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • LOCATION: la posizione del set di dati
    • DATASET_ID: il set di dati principale dell'archivio DICOM
    • DICOM_STORE_ID: l'ID dell'archivio DICOM
    • BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente in cui esporti i metadati DICOM
    • BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • WRITE_EMPTY: esporta i dati solo se la tabella BigQuery è vuota.
      • WRITE_TRUNCATE: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • WRITE_APPEND: accoda i dati alla tabella BigQuery.

    Corpo JSON della richiesta:

    {
      "bigqueryDestination": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    cat > request.json << 'EOF'
    {
      "bigqueryDestination": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    EOF

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    @'
    {
      "bigqueryDestination": {
          "tableUri": "bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    '@  | Out-File -FilePath request.json -Encoding utf8

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Explorer API

    Copia il corpo della richiesta e apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Incolla il corpo della richiesta in questo strumento, compila gli altri campi obbligatori e fai clic su Esegui.

    L'output è il seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione (LRO). Le operazioni che richiedono molto tempo vengono restituite quando le chiamate ai metodi potrebbero richiedere ulteriore tempo per essere completate. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

  2. Utilizza il metodo projects.locations.datasets.operations.get per ottenere lo stato dell'operazione a lunga esecuzione.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • DATASET_ID: l'ID set di dati
    • LOCATION: la posizione del set di dati
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Esegui questo 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

    Esegui questo 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

    Explorer API

    Apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Compila i campi obbligatori e fai clic su Esegui.

    L'output è il seguente. Quando la risposta contiene "done": true, l'operazione a lunga esecuzione è terminata.

Esportazione dei metadati DICOM in un altro progetto

Per esportare i metadati DICOM da un archivio DICOM in un progetto a un set di dati BigQuery in un altro progetto, consulta innanzitutto Autorizzazioni per l'esportazione dei metadati DICOM in un progetto diverso per informazioni su come impostare le autorizzazioni IAM nel progetto di destinazione.

gcloud

Per esportare i metadati DICOM da un archivio DICOM in un progetto a una tabella BigQuery in un altro progetto, utilizza il comando gcloud healthcare dicom-stores export bq.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • SOURCE_PROJECT_ID: l'ID del progetto Google Cloud di origine
    • SOURCE_LOCATION: la posizione del set di dati di origine
    • SOURCE_DATASET_ID: il set di dati principale dell'archivio DICOM di origine
    • SOURCE_DICOM_STORE_ID: l'ID dell'archivio DICOM di origine
    • DESTINATION_PROJECT_ID: l'ID del progetto diverso
    • DESTINATION_BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente nel progetto di destinazione in cui esporti i metadati DICOM
    • DESTINATION_BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • write-empty: esporta i dati solo se la tabella BigQuery è vuota.
      • write-truncate: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • write-append: accoda i dati alla tabella BigQuery.

    Esegui il seguente 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 risposta è la seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. Il comando esegue il polling dell'operazione a lunga esecuzione, quindi stampa il nome dell'operazione nel campo name al termine dell'esportazione. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

    Risposta

    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. Per visualizzare ulteriori dettagli sull'operazione, esegui il comando gcloud healthcare operations describe e fornisci il valore OPERATION_ID della risposta:

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • SOURCE_PROJECT_ID: l'ID del progetto Google Cloud di origine
    • SOURCE_LOCATION: la posizione del set di dati di origine
    • SOURCE_DATASET_ID: l'ID del set di dati di origine
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Esegui il seguente 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

    Dovresti ricevere una risposta simile alla seguente:

    Risposta

    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

Per esportare i metadati DICOM da un archivio DICOM in un progetto a una tabella BigQuery in un altro progetto, utilizza il metodo projects.locations.datasets.dicomStores.export.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • SOURCE_PROJECT_ID: l'ID del progetto Google Cloud di origine
    • SOURCE_LOCATION: la posizione del set di dati di origine
    • SOURCE_DATASET_ID: il set di dati principale dell'archivio DICOM di origine
    • SOURCE_DICOM_STORE_ID: l'ID dell'archivio DICOM di origine
    • DESTINATION_PROJECT_ID: l'ID del progetto diverso
    • DESTINATION_BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente nel progetto di destinazione in cui esporti i metadati DICOM
    • DESTINATION_BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • WRITE_EMPTY: esporta i dati solo se la tabella BigQuery è vuota.
      • WRITE_TRUNCATE: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • WRITE_APPEND: accoda i dati alla tabella BigQuery.

    Corpo JSON della richiesta:

    {
      "bigqueryDestination": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    cat > request.json << 'EOF'
    {
      "bigqueryDestination": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    EOF

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    @'
    {
      "bigqueryDestination": {
          "tableUri": "bq://DESTINATION_PROJECT_ID.DESTINATION_BIGQUERY_DATASET_ID.DESTINATION_BIGQUERY_TABLE_ID",
          "writeDisposition": "WRITE_DISPOSITION"
      }
    }
    '@  | Out-File -FilePath request.json -Encoding utf8

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Explorer API

    Copia il corpo della richiesta e apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Incolla il corpo della richiesta in questo strumento, compila gli altri campi obbligatori e fai clic su Esegui.

    L'output è il seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione (LRO). Le operazioni che richiedono molto tempo vengono restituite quando le chiamate ai metodi potrebbero richiedere ulteriore tempo per essere completate. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

  2. Utilizza il metodo projects.locations.datasets.operations.get per ottenere lo stato dell'operazione a lunga esecuzione.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • SOURCE_PROJECT_ID: l'ID del progetto Google Cloud di origine
    • SOURCE_LOCATION: la posizione del set di dati di origine
    • SOURCE_DATASET_ID: l'ID del set di dati di origine
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Esegui questo 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

    Esegui questo 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

    Explorer API

    Apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Compila i campi obbligatori e fai clic su Esegui.

    L'output è il seguente. Quando la risposta contiene "done": true, l'operazione a lunga esecuzione è terminata.

Esportazione dei metadati DICOM mediante filtri

Per impostazione predefinita, quando esporti i file DICOM in Cloud Storage, vengono esportati tutti i file DICOM nell'archivio DICOM specificato. Analogamente, quando esporti i metadati DICOM in BigQuery, vengono esportati i metadati di tutti i dati DICOM nell'archivio DICOM specificato.

Puoi esportare un sottoinsieme di dati o metadati DICOM utilizzando un filtro. Puoi definire il filtro in un file di filtro.

Configurazione dei file di filtro

Un file filtro definisce i file DICOM da esportare in Cloud Storage o BigQuery. Puoi configurare i file di filtro ai seguenti livelli:

  • A livello di studio
  • A livello di serie
  • A livello di istanza

Il file del filtro è composto da più righe, ciascuna delle quali definisce lo studio, la serie o l'istanza da esportare. Ogni riga utilizza il formato /studies/STUDY_UID[/series/SERIES_UID[/instances/INSTANCE_UID]].

Se un'istanza, una serie o uno studio non è specificato nel file del filtro quando lo passi, non verrà esportato.

È obbligatoria solo la parte /studies/STUDY_UID del percorso. Puoi esportare un intero studio specificando /studies/STUDY_UID oppure un'intera serie specificando /studies/STUDY_UID/series/SERIES_UID.

Considera il seguente file di filtro. Il file del filtro comporterà l'esportazione di un'indagine, due serie e tre singole istanze:

/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

Creazione di un file di filtro utilizzando BigQuery

In genere, crei un file di filtro esportando prima i metadati da un archivio DICOM in BigQuery. In questo modo, puoi utilizzare BigQuery per visualizzare gli UID di studi, serie e istanze dei dati DICOM nel tuo archivio DICOM. Poi puoi completare i seguenti passaggi:

  1. Esegui una query per gli UID di studi, serie e istanze che ti interessano. Ad esempio, dopo aver esportato i metadati DICOM in BigQuery, puoi eseguire la seguente query per concatenare gli UID di studio, serie e istanza in un formato compatibile con i requisiti del file di filtro:
    SELECT CONCAT
        ('/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID)
    FROM
        [PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE]
  2. Se la query restituisce un insieme di risultati di grandi dimensioni, puoi materializzare una nuova tabella salvando i risultati della query in una tabella di destinazione in BigQuery.
  3. Se hai salvato i risultati della query in una tabella di destinazione, puoi salvare i contenuti della tabella di destinazione in un file ed esportarli in Cloud Storage. Per la procedura da seguire, consulta Esportazione dei dati delle tabelle. Il file esportato è il tuo file filtro. Utilizza la posizione del file del filtro in Cloud Storage quando specifichi il filtro nell'operazione di esportazione.

Creazione di un file di filtro manualmente

Puoi creare un file di filtro con contenuti personalizzati e caricarlo in un bucket Cloud Storage. Utilizza la posizione del file del filtro in Cloud Storage quando specifichi il filtro nell'operazione di esportazione. L'esempio seguente mostra come caricare un file filtro in un bucket Cloud Storage utilizzando il comando gcloud storage cp:
gcloud storage cp FILTER_FILE gs://BUCKET

Passaggio del file del filtro

Dopo aver creato un file di filtro, puoi chiamare l'operazione di esportazione DICOM e trasmettere il file di filtro utilizzando l'API REST. Gli esempi riportati di seguito mostrano come esportare i metadati DICOM utilizzando un filtro.

gcloud

Per esportare i metadati DICOM in una tabella BigQuery utilizzando un filtro, esegui il comando gcloud beta healthcare dicom-stores export bq.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • LOCATION: la posizione del set di dati
    • DATASET_ID: il set di dati principale dell'archivio DICOM
    • DICOM_STORE_ID: l'ID dell'archivio DICOM
    • BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente in cui esporti i metadati DICOM
    • BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • BUCKET: il nome del bucket Cloud Storage contenente il file del filtro. Se il file del filtro si trova in una directory, includi la directory nel percorso.
    • FILTER_FILE: la posizione e il nome del file del filtro in un bucket Cloud Storage
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • write-empty: esporta i dati solo se la tabella BigQuery è vuota.
      • write-truncate: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • write-append: accoda i dati alla tabella BigQuery.

    Esegui il seguente 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 risposta è la seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. Il comando esegue il polling dell'operazione a lunga esecuzione, quindi stampa il nome dell'operazione nel campo name al termine dell'esportazione. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

    Risposta

    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. Per visualizzare ulteriori dettagli sull'operazione, esegui il comando gcloud healthcare operations describe e fornisci il valore OPERATION_ID della risposta:

    Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • DATASET_ID: l'ID set di dati
    • LOCATION: la posizione del set di dati
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Esegui il seguente 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

    Dovresti ricevere una risposta simile alla seguente:

    Risposta

    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

Per esportare i metadati DICOM in una tabella BigQuery utilizzando un filtro, utilizza il metodo projects.locations.datasets.dicomStores.export.

  1. Esporta i metadati DICOM.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • LOCATION: la posizione del set di dati
    • DATASET_ID: il set di dati principale dell'archivio DICOM
    • DICOM_STORE_ID: l'ID dell'archivio DICOM
    • BIGQUERY_DATASET_ID: il nome di un set di dati BigQuery esistente in cui esporti i metadati DICOM
    • BIGQUERY_TABLE_ID: il nome di una tabella nuova o esistente nel set di dati BigQuery. Se l'operazione di esportazione crea una nuova tabella, consulta Nomi delle tabelle per i requisiti dei nomi delle tabelle.
    • BUCKET: il nome del bucket Cloud Storage contenente il file del filtro. Se il file del filtro si trova in una directory, includi la directory nel percorso.
    • FILTER_FILE: la posizione e il nome del file del filtro in un bucket Cloud Storage
    • WRITE_DISPOSITION: un valore per l'enum WriteDisposition. Utilizza uno dei seguenti valori:
      • WRITE_EMPTY: esporta i dati solo se la tabella BigQuery è vuota.
      • WRITE_TRUNCATE: cancella tutti i dati esistenti nella tabella BigQuery prima di scrivere le istanze DICOM.
      • WRITE_APPEND: accoda i dati alla tabella BigQuery.

    Corpo JSON della richiesta:

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

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    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

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Salva il corpo della richiesta in un file denominato request.json. Esegui questo comando nel terminale per creare o sovrascrivere questo file nella directory corrente:

    @'
    {
      "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

    Quindi, esegui il seguente comando per inviare la richiesta 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

    Explorer API

    Copia il corpo della richiesta e apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Incolla il corpo della richiesta in questo strumento, compila gli altri campi obbligatori e fai clic su Esegui.

    L'output è il seguente. La risposta contiene un identificatore per un'operazione a lunga esecuzione (LRO). Le operazioni che richiedono molto tempo vengono restituite quando le chiamate ai metodi potrebbero richiedere ulteriore tempo per essere completate. Prendi nota del valore di OPERATION_ID. Questo valore ti servirà nel passaggio successivo.

  2. Utilizza il metodo projects.locations.datasets.operations.get per ottenere lo stato dell'operazione a lunga esecuzione.

    Prima di utilizzare i dati della richiesta, apporta le seguenti sostituzioni:

    • PROJECT_ID: l'ID del tuo progetto Google Cloud
    • DATASET_ID: l'ID set di dati
    • LOCATION: la posizione del set di dati
    • OPERATION_ID: l'ID restituito dall'operazione a lunga esecuzione

    Per inviare la richiesta, scegli una delle seguenti opzioni:

    curl

    Esegui questo 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

    Esegui questo 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

    Explorer API

    Apri la pagina di riferimento del metodo. Il riquadro Esplora API si apre sul lato destro della pagina. Puoi interagire con questo strumento per inviare richieste. Compila i campi obbligatori e fai clic su Esegui.

    L'output è il seguente. Quando la risposta contiene "done": true, l'operazione a lunga esecuzione è terminata.

Eseguire query e analizzare i dati DICOM in BigQuery

Dopo aver esportato i metadati DICOM in una tabella BigQuery, puoi eseguire query di esempio per ottenere ulteriori dettagli sui metadati. I seguenti esempi mostrano come eseguire query per alcuni casi d'uso comuni.

Ricerca nei metadati

Supponiamo che tu voglia eseguire ricerche in una grande quantità di metadati che è difficile trovare in altri sistemi, ad esempio un sistema PACS (Picture Archiving and Communication System) o un'archivio VNA (Vendor Neutral Archive). La seguente query mostra come eseguire query sul valore PatientID di un paziente e utilizzare il percorso DICOMweb per recuperare istanze di immagini specifiche. Il sample utilizza la tabella chc-nih-chest-xray.nih_chest_xray.nih_chest_xray del set di dati per immagini toraciche a raggi X 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 query restituisce gli studi associati al paziente. La seguente risposta utilizza la formattazione 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"
  }
]

Eseguire query sugli ultimi studi

Supponiamo che tu voglia compilare una lista di lavoro per la lettura PACS con gli studi più recenti del tuo set di dati.

La seguente query mostra come recuperare e visualizzare gli studi più recenti, insieme ai conteggi delle istanze e ai metadati adiacenti. Il sample utilizza la tabella bigquery-public-data.idc_v5.dicom_metadata del set di dati 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 query restituisce le seguenti informazioni:

  • I 10 studi più recenti inseriti nel sistema e la data di inserimento
  • Il paziente associato a ogni studio
  • L'UID dello studio
  • Il numero di istanze associate allo studio

La seguente risposta utilizza la formattazione 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"
  }
]

Limitazioni e comportamento aggiuntivo

Se il tag DICOM non ha un tipo supportato in BigQuery (elencato in VR escluse), viene elencato in una colonna separata (chiamata DroppedTags.TagName) nella tabella BigQuery di destinazione.

Risoluzione dei problemi relativi alle richieste di esportazione DICOM

Se si verificano errori durante una richiesta di esportazione dei metadati DICOM in BigQuery, gli errori vengono registrati in Cloud Logging. Per ulteriori informazioni, consulta Visualizzazione dei log degli errori in Cloud Logging.