View a markdown version of this page

Memahami laporan drift - AWS HealthLake

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memahami laporan drift

Saat deteksi drift diaktifkan, pekerjaan massal akan menulis laporan agregat yang diberi nama jobLevelDriftResult.json ke lokasi keluaran Anda. Laporan ini memberi tahu Anda berapa banyak data sumber Anda yang sebenarnya diambil profil, dan apa yang terlewatkan: sehingga Anda tahu di mana harus meningkatkan pemetaan Anda.

Struktur laporan tergantung pada format sumber: C-CDA laporan disusun di sekitar bagian dokumen dan entri (diidentifikasi oleh OID), sementara laporan CSV diatur di sekitar tabel, kolom, dan baris. Keduanya berbagi konsep tingkat cakupan yang sama (pecahan dari 0,0 hingga 1,0, di mana lebih tinggi berarti lebih banyak sumber Anda ditangkap).

C-CDA laporan drift

{ "jobId": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6", "profileId": "0f1e2d3c4b5a69788796a5b4c3d2e1f0", "profileVersion": 3, "timestamp": "2026-07-14T18:30:00Z", "filesProcessed": 500, "totalFilesFailed": 2, "avgSectionCoverageRate": 0.92, "avgEntryCoverageRate": 0.85, "avgOverallCoverageRate": 0.88, "avgResourceAccuracy": 0.97, "totalUnknownSections": 14, "totalUnknownEntries": 63, "documentOids": { "2.16.840.1.113883.10.20.22.1.2": 480 }, "unknownSectionOidCount": 2, "unknownSections": { "2.16.840.1.113883.10.20.22.2.14": 12 }, "unknownEntryOidCount": 5, "unknownEntries": { "2.16.840.1.113883.10.20.22.4.13": 40 }, "missingResources": { "2.16.840.1.113883.10.20.22.2.6.1": { "AllergyIntolerance": 8 } }, "perFileDrift": { "patient-001.xml": 0.95, "patient-002.xml": 0.61 } }

Cara membacanya

Mulailah dengan tarif pertanggungan. Ini adalah rata-rata di semua file yang diproses, dinyatakan sebagai pecahan dari 0,0 hingga 1,0 (kalikan dengan 100 untuk persentase). Lebih tinggi lebih baik: tingkat yang lebih tinggi berarti lebih banyak data sumber Anda berhasil masuk ke output FHIR.

Bidang Apa artinya
avgOverallCoverageRate Nomor headline. Fraksi rata-rata konten sumber (bagian + entri) yang dipetakan profil ke FHIR. 0,88 berarti ~ 88% dari data sumber Anda ditangkap.
avgSectionCoverageRate Rata-rata fraksi C-CDA bagian (misalnya, Masalah, Obat, Alergi) yang dipetakan.
avgEntryCoverageRate Rata-rata fraksi entri individu dalam bagian (misalnya, satu masalah atau obat) yang dipetakan.
avgResourceAccuracy Dari sumber daya FHIR yang diharapkan, fraksi rata-rata yang benar-benar diproduksi.

Kemudian temukan apa yang terlewatkan. Bidang ini mengarahkan Anda ke pemetaan spesifik untuk ditambahkan:

Bidang Apa artinya Apa yang harus dilakukan
unknownSections Peta bagian sumber OID profil tidak mengenali, dan berapa kali masing-masing muncul. Tambahkan pemetaan untuk bagian OID dengan jumlah tinggi.
unknownEntries Peta entri sumber OID profil tidak mengenali, dan frekuensinya. Tambahkan pemetaan untuk OID entri berhitung tinggi.
missingResources Peta sumber OID → jenis sumber daya FHIR yang diharapkan tetapi tidak diproduksi, dengan jumlah. Perbaiki pemetaan yang seharusnya menghasilkan sumber daya tersebut.
totalUnknownSections / totalUnknownEntries Jumlah total bagian dan entri yang belum dipetakan di seluruh pekerjaan. Gunakan sebagai sinyal “berapa banyak yang tersisa” cepat.
documentOids Peta OID C-CDA tipe dokumen yang terlihat dalam pekerjaan, dan berapa banyak masing-masing. Konfirmasikan jenis dokumen mana yang berisi data Anda.

Prioritaskan berdasarkan frekuensi. Hitung masukunknownSections,unknownEntries, dan missingResources memberi tahu Anda kesenjangan mana yang paling memengaruhi catatan. OID yang muncul 40 kali adalah kemenangan yang lebih besar untuk dipetakan daripada yang muncul dua kali.

Bor ke file tertentu. perFileDriftmemetakan setiap file sumber ke tingkat cakupan keseluruhannya. Urutkan berdasarkan nilai terendah untuk menemukan file yang ditangani paling buruk oleh profil: misalnya, patient-002.xml pada 0,61 layak diperiksa. Untuk rincian per file lengkap (OID spesifik yang terlewatkan setiap file), lihat laporan individual di bawah folderdriftDetectionPerFileResults/.

Meningkatkan cakupan

  1. Identifikasi entri frekuensi tertinggi diunknownSections,, dan. unknownEntries missingResources

  2. Gunakan agen AI Transformasi Data (UpdateProfileWithAgent) untuk menambahkan pemetaan untuk OID dan sumber daya tersebut: Anda dapat menempelkan OID dan meminta agen untuk memetakannya.

  3. Publikasikan versi profil baru dan jalankan kembali pekerjaan.

  4. Bandingkan yang baru avgOverallCoverageRate untuk mengkonfirmasi celah tertutup.

Laporan drift CSV

Untuk pekerjaan CSV, laporan disusun di sekitar tabel (setiap file CSV adalah tabel), kolom, dan baris: bukan bagian dan OID.

{ "jobId": "a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6", "profileId": "0f1e2d3c4b5a69788796a5b4c3d2e1f0", "profileVersion": 3, "summary": { "totalTablesInProfile": 4, "totalTablesInInput": 5, "tablesProcessed": 4, "tablesUnmapped": 1, "totalColumnsInInput": 42, "columnsMapped": 35, "columnsUnmapped": 7, "totalRowsScanned": 120000, "rowsConvertedSuccessfully": 119850, "rowsFailedCustomerError": 140, "rowsFailedServerError": 10, "totalResourcesGenerated": 245000, "tablesCoverageRate": 0.80, "columnsCoverageRate": 0.83, "overallCoverageRate": 0.83 }, "unmappedTables": [ { "tableName": "billing", "fileName": "billing.csv", "reason": "No matching table declared in the mapping profile", "columns": ["invoice_id", "amount", "payer"] } ], "unmappedColumns": [ { "tableName": "patients", "columns": ["preferred_language", "ethnicity_detail"], "reason": "Present in CSV but not referenced by any field mapping" } ] }

Cara membacanya

Mulailah dengan ringkasan. Tingkat cakupan adalah pecahan dari 0,0 hingga 1,0 (lebih tinggi lebih baik):

Bidang Apa artinya
overallCoverageRate Nomor judul: fraksi dari semua kolom di semua tabel input yang sebenarnya digunakan profil Anda. 0,83 berarti ~ 83% kolom sumber Anda dipetakan.
tablesCoverageRate Pecahan dari file CSV masukan Anda (tabel) yang dipetakan oleh profil (tablesProcessed/totalTablesInInput).
columnsCoverageRate Fraksi kolom dalam tabel yang dipetakan yang direferensikan oleh pemetaan bidang.

Kemudian periksa hitungan untuk memahami hasil konversi:

Bidang Apa artinya
totalTablesInInputvs tablesProcessed Berapa banyak file CSV Anda yang benar-benar digunakan vs. ditemukan.
totalColumnsInInput / columnsMapped / columnsUnmapped Berapa banyak kolom sumber yang ada, digunakan, dan diabaikan.
totalRowsScanned / rowsConvertedSuccessfully Berapa banyak baris yang dibaca vs. berhasil dikonversi.
rowsFailedCustomerError / rowsFailedServerError Baris yang gagal karena masalah kualitas data vs. kesalahan internal.
totalResourcesGenerated Total sumber daya FHIR yang diproduksi.

Kemudian temukan apa yang terlewatkan:

Bidang Apa artinya Apa yang harus dilakukan
unmappedTables File CSV dalam input Anda bahwa profil tidak mendeklarasikan (dengan alasan dan kolom dalam file itu). Tambahkan pemetaan tabel jika file itu harus dikonversi.
unmappedColumns Per tabel, kolom hadir dalam CSV tetapi tidak digunakan oleh pemetaan bidang apa pun. Tambahkan pemetaan bidang untuk kolom yang Anda inginkan di output FHIR.

Meningkatkan cakupan (kedua format)

  1. Identifikasi kesenjangan dampak tertinggi: untuk C-CDA, entri frekuensi tertinggi diunknownSections/unknownEntries/missingResources; untuk CSV, entri di,, dan peringatan. unmappedTables unmappedColumns

  2. Gunakan agen AI Transformasi Data (UpdateProfileWithAgent) untuk menambahkan pemetaan yang hilang: Anda dapat menempelkan OID (C-CDA) atau nama kolom (CSV) yang tidak dipetakan dan meminta agen untuk memetakannya.

  3. Publikasikan versi profil baru dan jalankan kembali pekerjaan.

  4. Bandingkan yang baru overallCoverageRate untuk mengkonfirmasi celah tertutup.

catatan

Deteksi drift melaporkan apa yang tidak dipetakan oleh profil; itu tidak menunjukkan kesalahan konversi. Sumber data dapat dengan sengaja dibiarkan tidak dipetakan jika tidak relevan dengan kasus penggunaan Anda. Gunakan laporan untuk memutuskan apa yang layak dipetakan.