1. Pengantar

Terakhir Diperbarui: 16-05-2020
Codelab ini menunjukkan pola penyerapan data untuk menyerap data kesehatan berformat FHIR R4 (Regular Resources) ke BigQuery menggunakan Cloud Healthcare FHIR API. Data pengujian layanan kesehatan yang realistis telah dibuat dan tersedia di bucket Google Cloud Storage (gs://hcls_testing_data_fhir_10_patients/) untuk Anda.
Dalam codelab ini, Anda akan mempelajari:
- Cara mengimpor resource FHIR R4 dari GCS ke Cloud Healthcare FHIR Store.
- Cara mengekspor data FHIR dari FHIR Store ke Set Data di BigQuery.
Apa yang Anda butuhkan untuk menjalankan demo ini?
- Anda memerlukan akses ke Project GCP.
- Anda harus diberi peran Pemilik untuk Project GCP.
- Resource FHIR R4 dalam format NDJSON (content-structure=RESOURCE)
Jika Anda tidak memiliki Project GCP, ikuti langkah-langkah ini untuk membuat Project GCP baru.
Resource FHIR R4 dalam format NDJSON telah dimuat sebelumnya ke dalam bucket GCS di lokasi berikut:
- gs://hcls_testing_data_fhir_10_patients/fhir_r4_ndjson/ - Regular Resources
Semua resource di atas memiliki format file JSON dengan pembatas baris baru (NDJSON), tetapi struktur kontennya berbeda:
- Regular Resources dalam format ndjson - setiap baris dalam file berisi resource FHIR inti dalam format JSON (seperti Patient, Observation, dll.). Setiap file ndjson berisi resource FHIR dengan jenis resource yang sama. Misalnya, Patient.ndjson akan berisi satu atau beberapa resource FHIR dengan resourceType = ‘ Patient' dan Observation.ndjson akan berisi satu atau beberapa resource FHIR dengan resourceType = ‘ Observation'.
Jika memerlukan set data baru, Anda dapat membuatnya kapan saja menggunakan SyntheaTM. Kemudian, upload ke GCS, bukan menggunakan bucket yang disediakan di codelab.
2. Penyiapan Project
Ikuti langkah-langkah berikut untuk mengaktifkan Healthcare API dan memberikan izin yang diperlukan:
Menginisialisasi variabel shell untuk lingkungan Anda
Untuk menemukan PROJECT_NUMBER dan PROJECT_ID, lihat Mengidentifikasi project.
<!-- CODELAB: Initialize shell variables --> export PROJECT_ID=<PROJECT_ID> export PROJECT_NUMBER=<PROJECT_NUMBER> export SRC_BUCKET_NAME=hcls_testing_data_fhir_10_patients export BUCKET_NAME=<BUCKET_NAME> export DATASET_ID=<DATASET_ID> export FHIR_STORE=<FHIR_STORE> export BQ_DATASET=<BQ_DATASET>
Mengaktifkan Healthcare API
Langkah-langkah berikut akan mengaktifkan Healthcare API di Project GCP Anda. Tindakan ini akan menambahkan akun layanan Healthcare API ke project.
- Buka Library API Konsol GCP.
- Dari daftar project, pilih project Anda.
- Di Library API, pilih API yang ingin Anda aktifkan. Jika Anda memerlukan bantuan untuk menemukan API, gunakan kolom penelusuran dan filter.
- Di halaman API, klik ENABLE.
Mendapatkan akses ke set data sintetis
- Dari alamat email yang Anda gunakan untuk login ke Konsol Cloud, kirim email ke hcls-solutions-external+subscribe@google.com untuk meminta bergabung.
- Anda akan menerima email berisi petunjuk tentang cara mengonfirmasi tindakan tersebut.
- Gunakan opsi untuk membalas email guna bergabung dengan grup.
- JANGAN klik tombol
. Tidak berfungsi. - Setelah menerima email konfirmasi, Anda dapat melanjutkan ke langkah berikutnya dalam codelab.
Buat bucket Google Cloud Storage di Project GCP Anda
gsutil mb gs://$BUCKET_NAME
Menyalin data sintetis ke Project GCP Anda
gsutil -m cp gs://$SRC_BUCKET_NAME/fhir_r4_ndjson/**.ndjson \ gs://$BUCKET_NAME/fhir_r4_ndjson/
Memberikan Izin
Sebelum mengimpor resource FHIR dari Cloud Storage dan mengekspor ke BigQuery, Anda harus memberikan izin tambahan ke akun layanan Cloud Healthcare Service Agent. Untuk mengetahui informasi selengkapnya, lihat izin Cloud Storage FHIR store dan BigQuery FHIR store.
Memberikan Izin Admin Penyimpanan
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:service-$PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectViewer
Memberikan Izin Admin BigQuery
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:service-$PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/bigquery.admin
3. Penyiapan Lingkungan
Ikuti langkah-langkah berikut untuk menyerap data dari file NDJSON ke set data kesehatan di BigQuery menggunakan Cloud Healthcare FHIR API:
Membuat Set Data Layanan Kesehatan dan FHIR Store
Buat set data Healthcare menggunakan Cloud Healthcare API
gcloud beta healthcare datasets create $DATASET_ID --location=us-central1
Membuat Penyimpanan FHIR di set data menggunakan Cloud Healthcare API
gcloud beta healthcare fhir-stores create $FHIR_STORE \ --dataset=$DATASET_ID --location=us-central1 --version=r4
4. Mengimpor data ke FHIR Store
Mengimpor data pengujian dari Google Cloud Storage ke FHIR Store.
Kita akan menggunakan file yang sudah dimuat sebelumnya dari Bucket GCS. File ini berisi resource reguler FHIR R4 dalam format NDJSON. Sebagai respons, Anda akan mendapatkan OPERATION_NUMBER, yang dapat digunakan dalam langkah validasi.
Mengimpor Resource Reguler dari Bucket GCS di Project GCP Anda
gcloud beta healthcare fhir-stores import gcs $FHIR_STORE \ --dataset=$DATASET_ID --async \ --gcs-uri=gs://$BUCKET_NAME/fhir_r4_ndjson/**.ndjson \ --location=us-central1 --content-structure=RESOURCE
Validasi
Operasi validasi berhasil diselesaikan. Mungkin perlu waktu beberapa menit untuk menyelesaikan operasi ini, jadi Anda mungkin perlu mengulangi perintah ini beberapa kali dengan jeda.
gcloud beta healthcare operations describe OPERATION_NUMBER \ --dataset=$DATASET_ID --location=us-central1
5. Mengekspor data dari FHIR Store ke BigQuery
Membuat Set Data BigQuery
bq mk --location=us --dataset $PROJECT_ID:$BQ_DATASET
Mengekspor data kesehatan dari FHIR Store ke Dataset BigQuery
gcloud beta healthcare fhir-stores export bq $FHIR_STORE \ --dataset=$DATASET_ID --location=us-central1 --async \ --bq-dataset=bq://$PROJECT_ID.$BQ_DATASET \ --schema-type=analytics
Sebagai respons, Anda akan mendapatkan OPERATION_NUMBER, yang dapat digunakan dalam langkah validasi.
Validasi
Operasi validasi berhasil diselesaikan
gcloud beta healthcare operations describe OPERATION_NUMBER \ --dataset=$DATASET_ID --location=us-central1
Memvalidasi apakah Set Data BigQuery memiliki semua 16 tabel
bq ls $PROJECT_ID:$BQ_DATASET
6. Pembersihan
Agar tidak menimbulkan biaya pada akun Google Cloud Platform Anda untuk resource yang digunakan dalam tutorial ini, Anda dapat membersihkan resource yang Anda buat di GCP sehingga tidak akan menggunakan kuota Anda, dan Anda tidak akan ditagih untuk resource tersebut di masa mendatang. Bagian berikut menjelaskan cara menghapus atau menonaktifkan resource ini.
Menghapus project
Cara termudah untuk menghilangkan penagihan adalah dengan menghapus project yang Anda buat untuk tutorial.
Untuk menghapus project:
- Di Konsol GCP, buka halaman Project. BUKA HALAMAN PROJECT
- Dalam daftar project, pilih project yang ingin dihapus, lalu klik Delete.
- Pada dialog, ketik project ID, lalu klik Shut down untuk menghapus project.
Jika Anda perlu menyimpan project, Anda dapat menghapus set data Cloud Healthcare dan set data BigQuery menggunakan petunjuk berikut.
Hapus set data Cloud Healthcare API
Ikuti langkah-langkah untuk menghapus set data Healthcare API menggunakan GCP Console dan gcloud CLI.
Perintah CLI cepat:
gcloud beta healthcare datasets delete $DATASET_ID --location=us-central1
Menghapus set data BigQuery
Ikuti langkah-langkah untuk menghapus set data BigQuery menggunakan antarmuka yang berbeda.
Perintah CLI cepat:
bq rm -r -f $PROJECT_ID:$DATASET_ID
7. Selamat
Selamat, Anda telah berhasil menyelesaikan codelab untuk menyerap data kesehatan di BigQuery menggunakan Cloud Healthcare API.
Anda mengimpor data sintetis yang kompatibel dengan FHIR R4 dari Google Cloud Storage ke Cloud Healthcare FHIR API.
Anda mengekspor data dari FHIR API Cloud Healthcare ke BigQuery.
Sekarang Anda mengetahui langkah-langkah utama yang diperlukan untuk memulai perjalanan Analisis Data Layanan Kesehatan dengan BigQuery di Google Cloud Platform.