Halaman ini menjelaskan cara mengekspor dan mengimpor resource FHIR ke dan dari Cloud Storage menggunakan metode projects.locations.datasets.fhirStores.import
dan projects.locations.datasets.fhirStores.export
.
Bergantung pada format data FHIR Anda, untuk memuat data ke penyimpanan FHIR, Anda
dapat menggunakan
metode
projects.locations.datasets.fhirStores.import
atau metode
projects.locations.datasets.fhirStores.fhir.executeBundle
. Untuk panduan dalam memilih metode, lihat
impor FHIR.
Menetapkan izin Cloud Storage
Sebelum mengekspor dan mengimpor resource FHIR ke dan dari Cloud Storage, Anda harus memberikan izin tambahan ke akun layanan Agen Layanan Cloud Healthcare. Untuk mengetahui informasi selengkapnya, lihat izin Cloud Storage penyimpanan FHIR.
Membuat data simulasi pasien
SyntheaTM adalah simulator untuk menghasilkan data populasi pasien. Jika Anda tidak menggunakan SyntheaTM untuk menghasilkan data populasi pasien, lanjutkan ke Mengimpor resource FHIR atau Mengekspor resource FHIR.
Anda hanya dapat mengimpor data dalam versi yang dikonfigurasi untuk diterima oleh penyimpanan FHIR Anda.
Untuk mendownload dan menginstal SyntheaTM, selesaikan langkah-langkah berikut:
Clone repositori alat SyntheaTM dari GitHub:
git clone https://github.com/synthetichealth/synthea.git
Selesaikan langkah-langkah penginstalan.
Lanjutkan ke salah satu bagian berikut guna menghasilkan data untuk versi FHIR tertentu:
Membuat simulasi data pasien untuk R4
Secara default, data SyntheaTM yang dihasilkan menggunakan representasi JSON FHIR R4 untuk resource. Untuk membuat data SyntheaTM FHIR R4 dan mengimpornya ke penyimpanan FHIR Cloud Healthcare API, selesaikan langkah-langkah berikut:
Ikuti petunjuk untuk membuat data pasien sintetis. Data yang dihasilkan akan menghasilkan
synthea/output/fhir_r4
untuk FHIR R4.Salin data yang dihasilkan ke bucket Cloud Storage sehingga Anda dapat mengimpornya ke penyimpanan FHIR Cloud Healthcare API. Misalnya, untuk menyalin data ke direktori bernama
synthea-data
di bucket Cloud Storage yang sudah ada, jalankan perintahgsutil cp
berikut dari direktorisynthea
:gsutil -m cp output/fhir_r4/* gs://BUCKET/synthea-data
Ikuti petunjuk untuk mengimpor resource FHIR.
Menghasilkan data pasien simulasi untuk DSTU2 atau STU3
Untuk membuat data SyntheaTM FHIR DSTU2 atau STU3 dan mengimpornya ke penyimpanan FHIR Cloud Healthcare API, selesaikan langkah-langkah berikut:
Dari direktori
synthea
, gunakan editor teks untuk membuka filesrc/main/resources/synthea.properties
, lalu buat perubahan berikut, bergantung pada apakah Anda menghasilkan data DSTU2 atau STU3.Untuk menghasilkan data FHIR STU3:
- Tetapkan semua nilai
*.fhir.export
dan*.fhir_dstu2.export
kefalse
- Tetapkan semua nilai
*.fhir_stu3.export
ke benar (true)
Untuk membuat data FHIR DSTU2:
- Tetapkan semua nilai
*.fhir.export
dan*.fhir_stu3.export
kefalse
- Tetapkan semua nilai
*.fhir_dstu2.export
ke benar (true)
Misalnya, untuk menghasilkan data FHIR STU3:
exporter.fhir.export = false exporter.fhir_stu3.export = true exporter.fhir_dstu2.export = false exporter.hospital.fhir.export = false exporter.hospital.fhir_stu3.export = true exporter.hospital.fhir_dstu2.export = false exporter.practitioner.fhir.export = false exporter.practitioner.fhir_stu3.export = true exporter.practitioner.fhir_dstu2.export = false
- Tetapkan semua nilai
Ikuti petunjuk untuk membuat data pasien sintetis. Data yang dihasilkan akan menghasilkan
synthea/output/fhir_stu3
untuk FHIR STU3 atau direktorisynthea/output/fhir_dstu2
untuk FHIR DSTU2.Salin data yang dihasilkan ke bucket Cloud Storage sehingga Anda dapat mengimpornya ke penyimpanan FHIR Cloud Healthcare API. Misalnya, untuk menyalin data ke direktori bernama
synthea-data
di bucket Cloud Storage yang sudah ada, jalankan perintahgsutil cp
berikut dari direktorisynthea
:gsutil -m cp output/fhir_stu3/* gs://BUCKET/synthea-data
Ikuti petunjuk untuk mengimpor resource FHIR.
Mengimpor resource FHIR
Saat mengonfigurasi isi permintaan impor, tetapkan
ContentStructure
ke salah satu nilai berikut:
CONTENT_STRUCTURE_UNSPECIFIED
BUNDLE
: File sumber berisi satu atau beberapa baris JSON (ndjson) yang dibatasi baris baru. Setiap baris adalah paket, yang berisi satu atau beberapa resource. Jika Anda tidak menentukanContentStructure
, nilai defaultnya adalahBUNDLE
.RESOURCE
: File sumber berisi satu atau beberapa baris JSON yang dibatasi baris baru (ndjson). Setiap baris adalah resource tunggal.BUNDLE_PRETTY
: Seluruh file sumber adalah satu paket JSON. JSON dapat mencakup beberapa baris.RESOURCE_PRETTY
: Seluruh file sumber adalah satu resource JSON. JSON dapat mencakup beberapa baris.
Misalnya, Anda mengimpor file bernama resources.ndjson
dengan konten berikut:
{"class":{"code":"IMP","display":"inpatient encounter","system":"http://hl7.org/fhir/v3/ActCode"},"id":"6090e773-3e91-40a7-8fce-1e22f6774c29","reason":[{"text":"The patient had an abnormal heart rate. She was concerned about this."}],"resourceType":"Encounter","status":"finished","subject":{"reference":"Patient/2938bb9e-1f16-429e-8d44-9508ab0e4151"}}
{"class":{"code":"IMP","display":"inpatient encounter","system":"http://hl7.org/fhir/v3/ActCode"},"id":"7101f884-4f02-51b8-9gdf-2f33g7885d30","reason":[{"text":"The patient was experiencing recurrent fevers."}],"resourceType":"Encounter","status":"finished","subject":{"reference":"Patient/3049cc0f-2g27-530f-9e55-0619bc1f5262"}}
{"birthDate":"1970-01-01","gender":"female","id":"2938bb9e-1f16-429e-8d44-9508ab0e4151","name":[{"family":"Smith","given":["Darcy"],"use":"official"}],"resourceType":"Patient"}
File berisi dua resource Meetup dan satu resource Pasien. Setiap
resource berada di baris terpisah sehingga Anda menyetel ContentStructure
ke
RESOURCE
.
Data Anda mungkin salah diimpor atau tidak diimpor sama sekali jika ContentStructure
tidak cocok dengan format data Anda. Misalnya, file contoh di atas tidak akan
diimpor dengan benar kecuali jika ContentStructure
ditetapkan ke RESOURCE
dalam
permintaan impor.
Contoh berikut menunjukkan cara mengimpor resource FHIR dari bucket Cloud Storage.
Konsol
Untuk mengimpor resource FHIR dari bucket Cloud Storage, lakukan langkah-langkah berikut:
- Di konsol Google Cloud, buka halaman Datasets.
Buka Datasets - Klik set data yang berisi penyimpanan FHIR tempat Anda mengimpor resource FHIR.
- Dalam daftar penyimpanan data, pilih Import dari daftar Actions untuk penyimpanan FHIR.
Halaman Import to FHIR store akan muncul. - Dalam daftar Project, pilih project Cloud Storage.
- Dalam daftar Location, pilih bucket Cloud Storage.
- Di FHIR import settings, pilih struktur konten yang relevan.
- Klik Import untuk mengimpor resource FHIR.
- 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.
gcloud
Untuk mengimpor resource FHIR ke penyimpanan FHIR, gunakan
perintah
gcloud healthcare fhir-stores import gcs
. Tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Lokasi objek dalam bucket Cloud Storage. Lokasi
file dalam bucket bersifat tidak tentu dan tidak harus mematuhi secara persis
format yang ditentukan dalam contoh berikut. Saat menentukan lokasi resource FHIR di Cloud Storage, Anda dapat menggunakan karakter pengganti untuk mengimpor beberapa file dari satu atau beberapa direktori.
Karakter pengganti berikut didukung:
- Gunakan
*
untuk mencocokkan 0 atau beberapa karakter nonpemisah. Misalnya,gs://BUCKET/DIRECTORY/Example*.ndjson
cocok dengan Example.ndjson dan Example22.ndjson di DIRECTORY. - Menggunakan
**
untuk mencocokkan 0 atau beberapa karakter (termasuk pemisah). Harus digunakan di akhir jalur dan tanpa karakter pengganti lainnya di jalur. Dapat juga digunakan dengan ekstensi nama file (seperti .ndjson), yang mengimpor semua file dengan ekstensi nama file di direktori yang ditentukan dan subdirektorinya. Misalnya,gs://BUCKET/DIRECTORY/**.ndjson
mengimpor semua file dengan ekstensi nama file .ndjson di DIRECTORY dan subdirektorinya. - Gunakan
?
untuk mencocokkan 1 karakter. Misalnya,gs://BUCKET/DIRECTORY/Example?.ndjson
cocok dengan Example1.ndjson, tetapi tidak cocok dengan Example.ndjson atau Example01.ndjson.
- Gunakan
Contoh berikut menunjukkan perintah
gcloud healthcare fhir-stores import gcs
.
gcloud healthcare fhir-stores import gcs FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --gcs-uri=gs://BUCKET/DIRECTORY/FHIR_RESOURCE_NAME.ndjson
Untuk menentukan struktur file sumber FHIR, gunakan flag --content-structure
.
Command line akan menampilkan ID operasi dan, setelah operasi selesai, done
:
Request issued for: [FHIR_STORE_ID] Waiting for operation [OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
Untuk melihat detail operasi selengkapnya, jalankan perintah
gcloud healthcare operations describe
, yang menyediakan OPERATION_ID dari respons:
gcloud healthcare operations describe OPERATION_ID \ --dataset=DATASET_ID
Respons menyertakan done: true
.
done: true metadata: '@type': type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata apiMethodName: google.cloud.healthcare.v1.fhir.FhirService.ImportResources createTime: 'CREATE_TIME' endTime: 'END_TIME' logsUrl: https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL, counter: success: 'SUCCESS_COUNT' name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID response: '@type': type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse fhirStore: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
API
Untuk mengimpor resource FHIR ke penyimpanan FHIR, gunakan
metode
projects.locations.datasets.fhirStores.import
.
- Lokasi file dalam bucket bersifat tidak tentu dan tidak harus mematuhi secara persis format yang ditentukan dalam contoh berikut.
- Saat menentukan lokasi resource FHIR di Cloud Storage, Anda dapat menggunakan karakter pengganti untuk mengimpor beberapa file dari satu atau beberapa direktori.
Karakter pengganti berikut didukung:
- Gunakan
*
untuk mencocokkan 0 atau beberapa karakter nonpemisah. Misalnya,gs://BUCKET/DIRECTORY/Example*.ndjson
cocok dengan Example.ndjson dan Example22.ndjson di DIRECTORY. - Menggunakan
**
untuk mencocokkan 0 atau beberapa karakter (termasuk pemisah). Harus digunakan di akhir jalur dan tanpa karakter pengganti lainnya di jalur. Dapat juga digunakan dengan ekstensi nama file (seperti .ndjson), yang mengimpor semua file dengan ekstensi nama file di direktori yang ditentukan dan subdirektorinya. Misalnya,gs://BUCKET/DIRECTORY/**.ndjson
mengimpor semua file dengan ekstensi nama file .ndjson di DIRECTORY dan subdirektorinya. - Gunakan
?
untuk mencocokkan 1 karakter. Misalnya,gs://BUCKET/DIRECTORY/Example?.ndjson
cocok dengan Example1.ndjson, tetapi tidak cocok dengan Example.ndjson atau Example01.ndjson.
- Gunakan
curl
Untuk mengimpor resource FHIR ke penyimpanan FHIR, buat permintaan POST
dan tentukan
informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Lokasi objek dalam bucket Cloud Storage
- Token akses
Contoh berikut menunjukkan cara mengimpor satu file menggunakan permintaan POST
menggunakan curl
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'contentStructure': 'CONTENT_STRUCTURE', 'gcsSource': { 'uri': 'gs://BUCKET/DIRECTORY/FHIR_RESOURCE_FILE' } }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import"
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
Respons berisi nama operasi. Untuk melacak status operasi, Anda dapat menggunakan metode get
Operasi:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
Jika permintaan berhasil, server akan menampilkan respons dengan status operasi dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ImportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse", } }
PowerShell
Untuk mengimpor resource FHIR ke penyimpanan FHIR, buat permintaan POST
dan tentukan
informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Lokasi objek dalam bucket Cloud Storage
- Token akses
Contoh berikut menunjukkan permintaan POST
menggunakan Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'contentStructure': 'CONTENT_STRUCTURE', 'gcsSource': { 'uri': 'gs://BUCKET/DIRECTORY/FHIR_RESOURCE_FILE' } }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:import" | Select-Object -Expand Content
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
Respons berisi nama operasi. Untuk melacak status operasi, Anda dapat menggunakan metode get
Operasi:
$cred = gcloud auth application-default 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
Jika permintaan berhasil, server akan menampilkan respons dengan status operasi dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ImportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ImportResourcesResponse", } }
Go
Java
Node.js
Python
Mengekspor resource FHIR
Contoh berikut menunjukkan cara mengekspor resource FHIR ke bucket Cloud Storage. Saat Anda mengekspor resource FHIR dari penyimpanan FHIR, semua resource di penyimpanan FHIR akan diekspor.
Selama ekspor, Cloud Healthcare API membuat satu file untuk setiap jenis resource dari penyimpanan FHIR. Nama file terdiri dari ID operasi dan
jenis resource yang dipisahkan dengan garis bawah. Setiap file terdiri dari
JSON yang dibatasi baris baru, dan setiap barisnya adalah resource FHIR yang sesuai dengan
jenis resource dalam nama file. Misalnya, jika Anda mengekspor beberapa data Pasien, file output akan bernama sesuatu yang mirip dengan
1264567891234567_Patient
dan akan berisi satu baris untuk setiap resource Pasien
dari penyimpanan FHIR.
Konsol
Untuk mengekspor resource FHIR ke Cloud Storage, selesaikan langkah-langkah berikut:
- Di konsol Google Cloud, buka halaman Datasets.
Buka Datasets - Klik set data yang berisi penyimpanan FHIR tempat Anda mengekspor resource FHIR.
- Dalam daftar penyimpanan data, pilih Export dari daftar Actions
untuk penyimpanan FHIR.
Halaman Export FHIR resources akan ditampilkan. - Pilih Google Cloud Storage Bucket.
- Dalam daftar Project, pilih project Cloud Storage.
- Dalam daftar Location, pilih bucket Cloud Storage.
- Klik Export untuk mengekspor resource FHIR ke lokasi yang ditentukan di Cloud Storage.
- 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.
gcloud
Untuk mengekspor resource FHIR ke bucket Cloud Storage, gunakan perintah gcloud healthcare fhir-stores export gcs
. Tentukan informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Nama project induk
- Bucket atau direktori Cloud Storage tujuan. Tulis ke bucket atau direktori Cloud Storage, bukan objek, karena Cloud Healthcare API membuat satu objek untuk setiap jenis resource. Setiap objek terdiri dari JSON yang dibatasi baris baru, dan setiap barisnya merupakan resource FHIR. Jika Anda menentukan direktori yang tidak ada, direktori tersebut akan dibuat.
- Flag opsional,
--resource-type
, yang hanya mengekspor jenis resource tertentu, yang didefinisikan sebagai daftar yang dipisahkan koma yang berisi satu atau beberapa jenis resource FHIR - Tanda opsional,
--since
, yang hanya mengekspor resource yang diupdate setelah waktu tertentu, yang ditentukan sebagaiYYYY-MM-DDThh:mm:ss.sss+zz:zz
Contoh berikut menunjukkan perintah
gcloud healthcare fhir-stores export gcs
.
gcloud healthcare fhir-stores export gcs FHIR_STORE_ID \ --dataset=DATASET_ID \ --location=LOCATION \ --project=PROJECT_ID --gcs-uri=gs://BUCKET/DIRECTORY
Command line menampilkan ID operasi:
Waiting for operation [OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID
Untuk melihat status operasi, jalankan perintah
gcloud healthcare operations describe
, yang menyediakan OPERATION_ID dari respons:
gcloud healthcare operations describe OPERATION_ID \ --dataset=DATASET_ID
Setelah perintah selesai, respons akan menyertakan done
.
metadata: '@type': type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata apiMethodName: google.cloud.healthcare.v1.fhir.FhirService.ExportFhirData createTime: "CREATE_TIME" endTime: "END_TIME" name: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID response: '@type': type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ExportResourcesResponse fhirStore: projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID resourceCount: 'RESOURCE_COUNT'
API
Untuk mengekspor resource FHIR, gunakan
metode
projects.locations.datasets.fhirStores.export
.
- Tulis ke bucket atau direktori Cloud Storage, bukan objek, karena Cloud Healthcare API membuat satu file JSON yang dibatasi baris baru untuk setiap jenis resource. Di setiap file JSON, setiap baris adalah resource FHIR.
- Jika perintah tersebut menentukan direktori yang tidak ada, direktori tersebut akan dibuat.
curl
Untuk mengekspor resource FHIR, buat permintaan POST
dan tentukan
informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Bucket Cloud Storage tujuan
- Token akses
- Kolom opsional,
_type
, yang hanya mengekspor jenis resource tertentu, ditetapkan sebagai daftar yang dipisahkan koma yang berisi satu atau beberapa jenis resource FHIR - Kolom opsional,
_since
, yang hanya mengekspor resource yang diupdate setelah waktu tertentu, yang ditetapkan sebagaiYYYY-MM-DDThh:mm:ss.sss+zz:zz
Contoh berikut menunjukkan permintaan POST
yang menggunakan curl
.
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' }, }" "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export"
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
Respons berisi nama operasi. Untuk melacak status operasi, Anda dapat menggunakan metode get
Operasi:
curl -X GET \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
Jika permintaan berhasil, server akan menampilkan respons dengan status operasi dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ExportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ExportResourcesResponse", } }
PowerShell
Untuk mengekspor resource FHIR, buat permintaan POST
dan tentukan
informasi berikut:
- Nama set data induk
- Nama toko FHIR
- Bucket atau direktori Cloud Storage tujuan. Tulis ke bucket atau direktori Cloud Storage, bukan objek, karena Cloud Healthcare API membuat satu objek untuk setiap jenis resource. Setiap objek terdiri dari JSON yang dibatasi baris baru, dengan setiap barisnya merupakan resource FHIR.
- Token akses
- Kolom opsional,
_type
, yang hanya mengekspor jenis resource tertentu, ditetapkan sebagai daftar yang dipisahkan koma yang berisi satu atau beberapa jenis resource FHIR - Kolom opsional,
_since
, yang hanya mengekspor resource yang diupdate setelah waktu tertentu, yang ditetapkan sebagaiYYYY-MM-DDThh:mm:ss.sss+zz:zz
Contoh berikut menunjukkan permintaan POST
menggunakan Windows PowerShell.
$cred = gcloud auth application-default print-access-token $headers = @{ Authorization = "Bearer $cred" } Invoke-WebRequest ` -Method Post ` -Headers $headers ` -ContentType: "application/json; charset=utf-8" ` -Body "{ 'gcsDestination': { 'uriPrefix': 'gs://BUCKET/DIRECTORY' }, }" ` -Uri "https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStores/FHIR_STORE_ID:export" | Select-Object -Expand Content
Jika permintaan berhasil, server akan menampilkan respons dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID" }
Respons berisi nama operasi. Untuk melacak status operasi, Anda dapat menggunakan metode get
Operasi:
$cred = gcloud auth application-default 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
Jika permintaan berhasil, server akan menampilkan respons dengan status operasi dalam format JSON:
{ "name": "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.OperationMetadata", "apiMethodName": "google.cloud.healthcare.v1.fhir.FhirService.ExportResources", "createTime": "CREATE_TIME", "endTime": "END_TIME", "logsUrl": "https://console.cloud.google.com/logs/query/CLOUD_LOGGING_URL", "counter": { "success": "SUCCESS_COUNT" } }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.healthcare.v1.fhir.rest.ExportResourcesResponse", } }
Go
Java
Node.js
Python
Memecahkan masalah permintaan impor dan ekspor FHIR
Jika terjadi error selama permintaan impor atau ekspor FHIR, error tersebut akan dicatat ke dalam log ke Cloud Logging. Untuk mengetahui informasi lebih lanjut, baca bagian Melihat log error di Cloud Logging.
Jika seluruh operasi menampilkan error, lihat Memecahkan masalah operasi yang berjalan lama.
Langkah selanjutnya
- Jika Anda berhasil mengimpor data FHIR dan ingin menganalisis data di BigQuery, lanjutkan ke Mengekspor data FHIR ke BigQuery.