Mengekspor metadata DICOM ke BigQuery

Halaman ini menjelaskan cara mengekspor metadata DICOM ke BigQuery untuk eksplorasi dan analisis. Untuk mendapatkan informasi tentang skema BigQuery yang dibuat saat mengekspor metadata DICOM, lihat Memahami skema DICOM BigQuery.

Menetapkan izin BigQuery

Sebelum mengekspor metadata DICOM ke tabel BigQuery, Anda harus memberikan izin tambahan ke akun layanan Agen Layanan Cloud Healthcare. Untuk informasi selengkapnya, lihat izin BigQuery penyimpanan DICOM.

Menetapkan tujuan BigQuery

Saat menetapkan tujuan BigQuery, gunakan URI yang sepenuhnya memenuhi syarat, seperti berikut:
bq://PROJECT_ID.BIGQUERY_DATASET_ID.BIGQUERY_TABLE_ID
Perilaku operasi ekspor dapat bervariasi bergantung pada:
  • Apakah tabel tujuan sudah ada
  • Apakah Anda telah menetapkan kolom force (menggunakan API) atau flag --overwrite-table (menggunakan Google Cloud CLI)
  • Apakah Anda telah menetapkan nilai untuk enum writeDisposition. Jika Anda menggunakan enum writeDisposition, jangan tetapkan kolom force.
Perilaku dalam setiap kasus ini adalah sebagai berikut:
  • Jika tabel tujuan sudah ada dan force ditetapkan ke true atau tanda --overwrite-table ditentukan, operasi ekspor akan menimpa tabel yang ada.
  • Jika tabel tujuan sudah ada dan force disetel ke false atau tanda --overwrite-table tidak ditentukan, error akan terjadi.
  • Jika tabel tujuan belum ada, tabel baru akan dibuat, terlepas dari apakah Anda menentukan kolom force atau flag --overwrite-table.
  • Perilaku untuk writeDisposition dijelaskan dalam dokumentasinya. Enum writeDisposition melakukan perilaku yang mirip dengan opsi saat menggunakan force, dengan pengecualian berikut: jika tabel tujuan sudah ada, dan kosong, operasi ekspor selesai, bukan menampilkan error.

Mengekspor metadata DICOM

Contoh berikut menunjukkan cara mengekspor metadata DICOM ke tabel BigQuery. Dalam contoh ini, penyimpanan DICOM dan tabel BigQuery berada dalam project yang sama. Untuk mengekspor metadata DICOM ke tabel BigQuery di project lain, lihat Mengekspor metadata DICOM ke project yang berbeda.

Konsol

Untuk mengekspor metadata DICOM ke tabel BigQuery, lakukan langkah-langkah berikut:

  1. Di konsol Google Cloud, buka halaman Datasets.

    Buka Set Data

  2. Klik set data yang memiliki penyimpanan DICOM dengan metadata yang Anda ekspor.

  3. Di baris yang sama dengan toko DICOM, buka daftar Tindakan dan pilih Ekspor.

  4. Di halaman Export DICOM store yang muncul, pilih BigQuery table.

  5. Di kolom Project, klik Browse, lalu pilih project Anda.

  6. Di daftar Set data, pilih set data BigQuery tempat Anda mengekspor metadata DICOM.

  7. Di kolom Tabel, masukkan nama tabel baru. BigQuery memeriksa setiap pilihan untuk memastikan tabel tujuan sudah valid.

  8. Di bagian Destination table write disposition, pilih salah satu dari opsi berikut. Opsi ini berkaitan dengan enum WriteDisposition.

    • Hanya ekspor data jika tabel tujuan kosong: Setara dengan WRITE_EMPTY
    • Menambahkan data ke tabel tujuan: Setara dengan WRITE_APPEND
    • Hapus semua data yang ada di tabel tujuan sebelum menulis instance: Setara dengan WRITE_TRUNCATE.
  9. Klik Export untuk mengekspor metadata DICOM ke tabel BigQuery.

  10. Untuk melacak status operasi, klik tab Operasi. Setelah operasi selesai, indikasi berikut akan muncul:
    • Bagian Long-running Operations status memiliki tanda centang hijau di bawah heading OK.
    • Bagian Overview memiliki tanda centang hijau dan indikator OK di baris yang sama dengan ID operasi.
    Jika Anda mengalami error, klik Tindakan, lalu klik View details in Cloud Logging.

gcloud

Untuk mengekspor metadata DICOM ke tabel BigQuery, jalankan perintah gcloud healthcare dicom-stores export bq.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • LOCATION: lokasi set data
    • DATASET_ID: set data induk penyimpanan DICOM
    • DICOM_STORE_ID: ID penyimpanan DICOM
    • BIGQUERY_DATASET_ID: nama set data BigQuery yang sudah ada tempat Anda mengekspor metadata DICOM
    • BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • write-empty: hanya mengekspor data jika tabel BigQuery kosong.
      • write-truncate: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • write-append: menambahkan data ke tabel BigQuery.

    Jalankan perintah berikut:

    Linux, macOS, atau 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
    Tanggapannya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama. Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu yang lama untuk diselesaikan. Perintah ini melakukan polling pada operasi yang berjalan lama, lalu mencetak nama operasi tersebut di kolom name setelah ekspor selesai. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

    Respons

    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. Untuk melihat detail operasi selengkapnya, jalankan perintah gcloud healthcare operations describe dan berikan OPERATION_ID dari respons:

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • DATASET_ID: ID set data
    • LOCATION: lokasi set data
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Jalankan perintah berikut:

    Linux, macOS, atau 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

    Anda akan melihat respons seperti berikut:

    Respons

    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

Untuk mengekspor metadata DICOM ke tabel BigQuery, gunakan metode projects.locations.datasets.dicomStores.export.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • LOCATION: lokasi set data
    • DATASET_ID: set data induk penyimpanan DICOM
    • DICOM_STORE_ID: ID penyimpanan DICOM
    • BIGQUERY_DATASET_ID: nama set data BigQuery yang sudah ada tempat Anda mengekspor metadata DICOM
    • BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • WRITE_EMPTY: hanya mengekspor data jika tabel BigQuery kosong.
      • WRITE_TRUNCATE: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • WRITE_APPEND: menambahkan data ke tabel BigQuery.

    Meminta isi JSON:

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

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

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

    Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:

    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

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

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

    Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:

    $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

    APIs Explorer

    Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom wajib lainnya, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama (LRO). Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu tambahan untuk diselesaikan. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

  2. Gunakan metode projects.locations.datasets.operations.get untuk mendapatkan status operasi yang berjalan lama.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • DATASET_ID: ID set data
    • LOCATION: lokasi set data
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Jalankan perintah berikut:

    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

    Jalankan perintah berikut:

    $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

    APIs Explorer

    Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Jika respons berisi "done": true, berarti operasi yang berjalan lama telah selesai.

Mengekspor metadata DICOM ke project lain

Untuk mengekspor metadata DICOM dari penyimpanan DICOM di satu project ke set data BigQuery di project lain, baca terlebih dahulu artikel Mengekspor metadata DICOM ke izin project yang berbeda untuk mengetahui informasi tentang cara menetapkan izin IAM di project tujuan.

gcloud

Untuk mengekspor metadata DICOM dari penyimpanan DICOM di satu project ke tabel BigQuery di project lain, gunakan perintah gcloud healthcare dicom-stores export bq.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud sumber
    • SOURCE_LOCATION: lokasi set data sumber
    • SOURCE_DATASET_ID: set data induk penyimpanan DICOM sumber
    • SOURCE_DICOM_STORE_ID: ID penyimpanan DICOM sumber
    • DESTINATION_PROJECT_ID: ID project yang berbeda
    • DESTINATION_BIGQUERY_DATASET_ID: nama set data BigQuery yang ada di project tujuan tempat Anda mengekspor metadata DICOM
    • DESTINATION_BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • write-empty: hanya mengekspor data jika tabel BigQuery kosong.
      • write-truncate: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • write-append: menambahkan data ke tabel BigQuery.

    Jalankan perintah berikut:

    Linux, macOS, atau 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
    Tanggapannya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama. Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu yang lama untuk diselesaikan. Perintah ini melakukan polling pada operasi yang berjalan lama, lalu mencetak nama operasi tersebut di kolom name setelah ekspor selesai. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

    Respons

    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. Untuk melihat detail operasi selengkapnya, jalankan perintah gcloud healthcare operations describe dan berikan OPERATION_ID dari respons:

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud sumber
    • SOURCE_LOCATION: lokasi set data sumber
    • SOURCE_DATASET_ID: ID set data sumber
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Jalankan perintah berikut:

    Linux, macOS, atau 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

    Anda akan melihat respons seperti berikut:

    Respons

    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

Untuk mengekspor metadata DICOM dari penyimpanan DICOM di satu project ke tabel BigQuery di project lain, gunakan metode projects.locations.datasets.dicomStores.export.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud sumber
    • SOURCE_LOCATION: lokasi set data sumber
    • SOURCE_DATASET_ID: set data induk penyimpanan DICOM sumber
    • SOURCE_DICOM_STORE_ID: ID penyimpanan DICOM sumber
    • DESTINATION_PROJECT_ID: ID project yang berbeda
    • DESTINATION_BIGQUERY_DATASET_ID: nama set data BigQuery yang ada di project tujuan tempat Anda mengekspor metadata DICOM
    • DESTINATION_BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • WRITE_EMPTY: hanya mengekspor data jika tabel BigQuery kosong.
      • WRITE_TRUNCATE: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • WRITE_APPEND: menambahkan data ke tabel BigQuery.

    Meminta isi JSON:

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

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

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

    Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:

    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

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

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

    Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:

    $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

    APIs Explorer

    Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom wajib lainnya, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama (LRO). Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu tambahan untuk diselesaikan. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

  2. Gunakan metode projects.locations.datasets.operations.get untuk mendapatkan status operasi yang berjalan lama.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • SOURCE_PROJECT_ID: ID project Google Cloud sumber
    • SOURCE_LOCATION: lokasi set data sumber
    • SOURCE_DATASET_ID: ID set data sumber
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Jalankan perintah berikut:

    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

    Jalankan perintah berikut:

    $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

    APIs Explorer

    Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Jika respons berisi "done": true, berarti operasi yang berjalan lama telah selesai.

Mengekspor metadata DICOM menggunakan filter

Secara default, saat Anda mengekspor file DICOM ke Cloud Storage, semua file DICOM di penyimpanan DICOM yang ditentukan akan diekspor. Demikian pula, saat Anda mengekspor metadata DICOM ke BigQuery, metadata untuk semua data DICOM di penyimpanan DICOM yang ditentukan akan diekspor.

Anda dapat mengekspor subset data atau metadata DICOM menggunakan filter. Anda menentukan filter dalam file filter.

Mengonfigurasi file filter

File filter menentukan file DICOM mana yang akan diekspor ke Cloud Storage atau BigQuery. Anda dapat mengonfigurasi file filter pada tingkat berikut:

  • Di tingkat studi
  • Di level serial
  • Di tingkat instance

File filter terdiri dari beberapa baris dengan setiap baris yang menentukan studi, rangkaian, atau instance yang ingin diekspor. Setiap baris menggunakan format /studies/STUDY_UID[/series/SERIES_UID[/instances/INSTANCE_UID]].

Jika studi, deret, atau instance tidak ditentukan dalam file filter saat Anda meneruskan file filter, studi, deret, atau instance tersebut tidak akan diekspor.

Hanya bagian /studies/STUDY_UID dari jalur yang diperlukan. Anda dapat mengekspor seluruh studi dengan menentukan /studies/STUDY_UID, atau Anda dapat mengekspor seluruh rangkaian dengan menentukan /studies/STUDY_UID/series/SERIES_UID.

Pertimbangkan file filter berikut. File filter akan menghasilkan satu studi, dua rangkaian, dan tiga instance individual yang diekspor:

/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

Membuat {i>file<i} filter menggunakan BigQuery

Anda biasanya membuat file filter dengan mengekspor metadata terlebih dahulu dari penyimpanan DICOM ke BigQuery. Hal ini memungkinkan Anda menggunakan BigQuery untuk melihat UID studi, deret, dan instance dari data DICOM di penyimpanan DICOM Anda. Kemudian Anda dapat menyelesaikan langkah-langkah berikut:

  1. Buat kueri untuk UID studi, rangkaian, dan instance yang Anda minati. Misalnya, setelah mengekspor metadata DICOM ke BigQuery, Anda dapat menjalankan kueri berikut untuk menggabungkan UID studi, rangkaian, dan instance ke format yang kompatibel dengan persyaratan file filter:
    SELECT CONCAT
        ('/studies/', StudyInstanceUID, '/series/', SeriesInstanceUID, '/instances/', SOPInstanceUID)
    FROM
        [PROJECT_ID:BIGQUERY_DATASET.BIGQUERY_TABLE]
  2. Jika kueri tersebut menampilkan kumpulan hasil besar, Anda dapat mewujud tabel baru dengan menyimpan hasil kueri ke tabel tujuan di BigQuery.
  3. Jika menyimpan hasil kueri ke tabel tujuan, Anda dapat menyimpan isi tabel tujuan ke file dan mengekspornya ke Cloud Storage. Untuk langkah-langkah cara melakukannya, lihat Mengekspor data tabel. {i>File<i} yang diekspor adalah {i>file filter<i} Anda. Anda dapat menggunakan lokasi file filter di Cloud Storage saat menentukan filter dalam operasi ekspor.

Membuat file filter secara manual

Anda dapat membuat file filter dengan konten kustom dan menguploadnya ke bucket Cloud Storage. Anda dapat menggunakan lokasi file filter di Cloud Storage saat menentukan filter dalam operasi ekspor. Contoh berikut menunjukkan cara mengupload file filter ke bucket Cloud Storage menggunakan perintah gsutil cp:
gsutil cp FILTER_FILE gs://BUCKET

Meneruskan file filter

Setelah membuat file filter, Anda dapat memanggil operasi ekspor DICOM dan meneruskan file filter menggunakan REST API. Contoh berikut menunjukkan cara mengekspor metadata DICOM menggunakan filter.

gcloud

Untuk mengekspor metadata DICOM ke tabel BigQuery menggunakan filter, jalankan perintah gcloud beta healthcare dicom-stores export bq.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • LOCATION: lokasi set data
    • DATASET_ID: set data induk penyimpanan DICOM
    • DICOM_STORE_ID: ID penyimpanan DICOM
    • BIGQUERY_DATASET_ID: nama set data BigQuery yang sudah ada tempat Anda mengekspor metadata DICOM
    • BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • BUCKET: nama bucket Cloud Storage yang berisi file filter. Jika file filter berada di direktori, sertakan direktori tersebut di jalurnya.
    • FILTER_FILE: lokasi dan nama file filter di bucket Cloud Storage
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • write-empty: hanya mengekspor data jika tabel BigQuery kosong.
      • write-truncate: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • write-append: menambahkan data ke tabel BigQuery.

    Jalankan perintah berikut:

    Linux, macOS, atau 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
    Tanggapannya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama. Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu yang lama untuk diselesaikan. Perintah ini melakukan polling pada operasi yang berjalan lama, lalu mencetak nama operasi tersebut di kolom name setelah ekspor selesai. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

    Respons

    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. Untuk melihat detail operasi selengkapnya, jalankan perintah gcloud healthcare operations describe dan berikan OPERATION_ID dari respons:

    Sebelum menggunakan salah satu data perintah di bawah, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • DATASET_ID: ID set data
    • LOCATION: lokasi set data
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Jalankan perintah berikut:

    Linux, macOS, atau 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

    Anda akan melihat respons seperti berikut:

    Respons

    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

Untuk mengekspor metadata DICOM ke tabel BigQuery menggunakan filter, gunakan metode projects.locations.datasets.dicomStores.export.

  1. Mengekspor metadata DICOM.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • LOCATION: lokasi set data
    • DATASET_ID: set data induk penyimpanan DICOM
    • DICOM_STORE_ID: ID penyimpanan DICOM
    • BIGQUERY_DATASET_ID: nama set data BigQuery yang sudah ada tempat Anda mengekspor metadata DICOM
    • BIGQUERY_TABLE_ID: nama tabel baru atau yang sudah ada dalam set data BigQuery. Jika operasi ekspor membuat tabel baru, lihat Penamaan tabel untuk mengetahui persyaratan nama tabel.
    • BUCKET: nama bucket Cloud Storage yang berisi file filter. Jika file filter berada di direktori, sertakan direktori tersebut di jalurnya.
    • FILTER_FILE: lokasi dan nama file filter di bucket Cloud Storage
    • WRITE_DISPOSITION: nilai untuk enum WriteDisposition. Gunakan salah satu nilai berikut:
      • WRITE_EMPTY: hanya mengekspor data jika tabel BigQuery kosong.
      • WRITE_TRUNCATE: hapus semua data yang ada di tabel BigQuery sebelum menulis instance DICOM.
      • WRITE_APPEND: menambahkan data ke tabel BigQuery.

    Meminta isi JSON:

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

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

    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

    Kemudian, jalankan perintah berikut untuk mengirim permintaan REST Anda:

    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

    Simpan isi permintaan dalam file bernama request.json. Jalankan perintah berikut di terminal untuk membuat atau menimpa file ini di direktori saat ini:

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

    Kemudian jalankan perintah berikut untuk mengirim permintaan REST Anda:

    $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

    APIs Explorer

    Salin isi permintaan dan buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Tempelkan isi permintaan di alat ini, lengkapi kolom wajib lainnya, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Respons berisi ID untuk operasi yang berjalan lama (LRO). Operasi yang berjalan lama ditampilkan ketika panggilan metode mungkin memerlukan waktu tambahan untuk diselesaikan. Catat nilai OPERATION_ID. Anda memerlukan nilai ini di langkah berikutnya.

  2. Gunakan metode projects.locations.datasets.operations.get untuk mendapatkan status operasi yang berjalan lama.

    Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

    • PROJECT_ID: ID project Google Cloud Anda
    • DATASET_ID: ID set data
    • LOCATION: lokasi set data
    • OPERATION_ID: ID yang ditampilkan dari operasi yang berjalan lama

    Untuk mengirim permintaan Anda, pilih salah satu opsi berikut:

    curl

    Jalankan perintah berikut:

    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

    Jalankan perintah berikut:

    $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

    APIs Explorer

    Buka halaman referensi metode. Panel APIs Explorer akan terbuka di sisi kanan halaman. Anda bisa berinteraksi dengan alat ini untuk mengirim permintaan. Lengkapi kolom yang wajib diisi, lalu klik Jalankan.

    Outputnya adalah sebagai berikut. Jika respons berisi "done": true, berarti operasi yang berjalan lama telah selesai.

Membuat kueri dan menganalisis data DICOM di BigQuery

Setelah mengekspor metadata DICOM ke tabel BigQuery, Anda dapat menjalankan kueri sampel untuk mendapatkan detail lebih lanjut tentang metadata tersebut. Contoh berikut menunjukkan cara menjalankan kueri untuk beberapa kasus penggunaan umum.

Menelusuri seluruh metadata

Anggaplah Anda ingin menelusuri sejumlah besar metadata yang sulit ditelusuri dalam sistem lain, seperti Picture Archive and Communication System (PACS) atau Vendor Neutral Archive (VNA). Kueri berikut menunjukkan cara membuat kueri tentang nilai PatientID pasien dan menggunakan jalur DICOMweb untuk mengambil instance gambar tertentu. Sampel ini menggunakan tabel chc-nih-chest-xray.nih_chest_xray.nih_chest_xray dari set data sinar-X NIH Chest.

#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';

Kueri tersebut menampilkan studi yang terkait dengan pasien. Respons berikut menggunakan pemformatan 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"
  }
]

Membuat kueri untuk studi terbaru

Misalkan Anda ingin mengisi daftar kerja pembacaan PACS dengan studi terbaru dari set data Anda.

Kueri berikut menunjukkan cara mengambil dan menampilkan studi terbaru beserta jumlah instance dan metadata sekitarnya. Sampel ini menggunakan tabel bigquery-public-data.idc_v5.dicom_metadata dari set data 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;

Kueri tersebut menampilkan informasi berikut:

  • 10 studi terbaru yang masuk ke sistem dan kapan mereka memasuki sistem
  • Pasien yang terkait dengan setiap studi
  • UID studi
  • Jumlah instance yang terkait dengan studi

Respons berikut menggunakan pemformatan 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"
  }
]

Batasan dan perilaku tambahan

Jika tag DICOM tidak memiliki jenis yang didukung di BigQuery (tercantum dalam VR yang Dikecualikan), tag tersebut tercantum di kolom terpisah (disebut DroppedTags.TagName) di tabel BigQuery tujuan.

Memecahkan masalah permintaan ekspor DICOM

Jika terjadi error selama metadata ekspor DICOM ke permintaan BigQuery, error tersebut akan dicatat ke dalam log ke Cloud Logging. Untuk mengetahui informasi lebih lanjut, baca bagian Melihat log error di Cloud Logging.