Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memeriksa HealthLake data dengan SQL
Saat Anda mengimpor data FHIR Anda ke penyimpanan HealthLake data, data JSON FHIR bersarang secara bersamaan mengalami proses ETL dan disimpan dalam format tabel terbuka Apache Iceberg di Amazon S3. Setiap jenis sumber daya FHIR dari penyimpanan HealthLake data Anda diubah menjadi tabel, yang dapat ditanyakan menggunakan Amazon Athena. Tabel dapat ditanyakan secara individual atau sebagai grup menggunakan kueri berbasis SQL. Karena struktur penyimpanan data, data Anda diimpor ke Athena sebagai beberapa tipe data yang berbeda. Untuk mempelajari selengkapnya tentang membuat kueri SQL yang dapat mengakses tipe data ini, lihat Array kueri dengan tipe kompleks dan struktur bersarang di Panduan Pengguna Amazon Athena.
catatan
Semua contoh dalam topik ini menggunakan data fiksi yang dibuat menggunakan Synthea. Untuk mempelajari selengkapnya tentang membuat penyimpanan data yang dimuat sebelumnya dengan data Synthea, lihat. Membuat penyimpanan HealthLake data
Untuk setiap elemen dalam tipe sumber daya, spesifikasi FHIR mendefinisikan kardinalitas. Kardinalitas suatu elemen mendefinisikan batas bawah dan atas berapa kali elemen ini dapat muncul. Saat membuat kueri SQL, Anda harus mempertimbangkan hal ini. Sebagai contoh, mari kita lihat beberapa elemen dalam tipe Sumber Daya: Pasien
-
Elemen: Nama Spesifikasi FHIR menetapkan kardinalitas sebagai.
0..*Elemen ditangkap sebagai array.
[{ id = null, extension = null, use = official, _use = null, text = null, _text = null, family = Wolf938, _family = null, given = [Noel608], _given = null, prefix = null, _prefix = null, suffix = null, _suffix = null, period = null }]Di Athena, untuk melihat bagaimana jenis sumber daya telah dicerna, cari di bawah Tabel dan tampilan. Untuk mengakses elemen dalam array ini, Anda dapat menggunakan notasi titik. Berikut adalah contoh sederhana yang akan mengakses nilai untuk
givendanfamily.SELECT name[1].given as FirstName, name[1].family as LastName FROM Patient -
Elemen: MaritalStatus Spesifikasi FHIR menetapkan kardinalitas sebagai.
0..1Elemen ini ditangkap sebagai JSON.
{ id = null, extension = null, coding = [ { id = null, extension = null, system = http: //terminology.hl7.org/CodeSystem/v3-MaritalStatus, _system = null, version = null, _version = null, code = S, _code = null, display = Never Married, _display = null, userSelected = null, _userSelected = null } ], text = Never Married, _text = null }Di Athena, untuk melihat bagaimana jenis sumber daya telah dicerna, cari di bawah Tabel dan tampilan. Untuk mengakses pasangan kunci-nilai di JSON, Anda dapat menggunakan notasi titik. Karena ini bukan array, tidak ada indeks array yang diperlukan. Berikut adalah contoh sederhana yang akan mengakses nilai untuk
text.SELECT maritalstatus.text as MaritalStatus FROM Patient
Untuk mempelajari lebih lanjut tentang mengakses dan mencari JSON, lihat Menanyakan JSON di Panduan Pengguna Athena.
Pernyataan kueri Athena Data Manipulation Language (DHTML) didasarkan pada Trino. Athena tidak mendukung semua fitur Trino, dan ada perbedaan yang signifikan. Untuk mempelajari selengkapnya, lihat kueri, fungsi, dan operator DHTML di Panduan Pengguna Amazon Athena.
Selain itu, Athena mendukung beberapa tipe data yang mungkin Anda temui saat membuat kueri penyimpanan data Anda HealthLake . Untuk mempelajari lebih lanjut tentang tipe data di Athena, lihat Jenis data di Amazon Athena di Panduan Pengguna Amazon Athena.
Untuk mempelajari lebih lanjut tentang cara kerja kueri SQL di Athena, lihat referensi SQL untuk Amazon Athena di Panduan Pengguna Amazon Athena.
Setiap tab menunjukkan contoh cara mencari pada jenis sumber daya yang ditentukan dan elemen terkait menggunakan Athena.