View a markdown version of this page

Deteksi anomali di AWS Lem Kualitas Data - AWS Lem

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

Deteksi anomali di AWS Lem Kualitas Data

Insinyur mengelola ratusan pipeline data secara bersamaan. Setiap pipeline dapat mengekstrak data dari berbagai sumber dan memuatnya ke danau data atau repositori data lainnya. Untuk memastikan data berkualitas tinggi disampaikan untuk pengambilan keputusan, mereka menetapkan aturan kualitas data. Aturan-aturan ini menilai data berdasarkan kriteria tetap yang mencerminkan keadaan bisnis saat ini. Namun, ketika lingkungan bisnis berubah, properti data bergeser, membuat kriteria tetap ini ketinggalan zaman dan menyebabkan kualitas data yang buruk.

Misalnya, seorang insinyur data di perusahaan ritel menetapkan aturan yang memvalidasi penjualan harian harus melebihi ambang batas satu juta dolar. Setelah beberapa bulan, penjualan harian melampaui dua juta dolar, membuat ambang batas menjadi usang. Insinyur data tidak dapat memperbarui aturan untuk mencerminkan ambang batas terbaru karena kurangnya pemberitahuan dan upaya yang diperlukan untuk menganalisis dan memperbarui aturan secara manual. Kemudian di bulan itu, pengguna bisnis melihat penurunan 25% dalam penjualan mereka. Setelah berjam-jam penyelidikan, para insinyur data menemukan bahwa pipeline ETL yang bertanggung jawab untuk mengekstraksi data dari beberapa toko telah gagal tanpa menghasilkan kesalahan. Aturan dengan ambang batas yang sudah ketinggalan zaman terus beroperasi dengan sukses tanpa mendeteksi masalah ini.

Atau, peringatan proaktif yang dapat mendeteksi anomali ini dapat memungkinkan pengguna mendeteksi masalah ini. Selain itu, pelacakan musiman dalam bisnis dapat menyoroti masalah kualitas data yang signifikan. Misalnya, penjualan eceran mungkin tertinggi pada akhir pekan dan selama musim liburan sementara relatif rendah pada hari kerja. Perbedaan dari pola ini dapat mengindikasikan masalah kualitas data atau pergeseran dalam keadaan bisnis. Aturan kualitas data tidak dapat mendeteksi pola musiman karena ini memerlukan algoritma canggih yang dapat belajar dari pola masa lalu yang menangkap musim untuk mendeteksi penyimpangan.

Akhirnya, pengguna merasa sulit untuk membuat dan memelihara aturan karena sifat teknis dari proses pembuatan aturan dan waktu yang diperlukan untuk membuatnya. Akibatnya, mereka lebih suka mengeksplorasi wawasan data terlebih dahulu sebelum menentukan aturan. Pelanggan membutuhkan kemampuan untuk menemukan anomali dengan mudah, memungkinkan mereka untuk secara proaktif mendeteksi masalah kualitas data dan membuat keputusan bisnis yang percaya diri.

Cara kerjanya

catatan

Deteksi anomali didukung di AWS Glue ETL dan Katalog Data AWS Glue. Anda dapat mengaktifkan deteksi anomali untuk tabel yang terdaftar di Katalog Data dengan menjalankan evaluasi berjalan dengan deteksi anomali diaktifkan (ObservationScope: ALL).

Tangkapan layar menunjukkan proses deteksi anomali kualitas data.

AWS Glue Data Quality menggabungkan kekuatan kualitas data berbasis aturan dan kemampuan deteksi anomali untuk memberikan data berkualitas tinggi. Untuk memulai, Anda harus terlebih dahulu mengonfigurasi aturan dan penganalisis, dan kemudian mengaktifkan deteksi anomali.

Aturan

Aturan — Aturan mengungkapkan harapan untuk data Anda dalam bahasa terbuka yang disebut Data Quality Definition Language (DQDL). Contoh aturan ditunjukkan di bawah ini. Aturan ini akan berhasil jika tidak ada nilai kosong atau NULL di kolom `passenger_count`:

Rules = [ IsComplete "passenger_count" ]

Alat analisa

Dalam situasi di mana Anda mengetahui kolom penting tetapi mungkin tidak cukup tahu tentang data untuk menulis aturan tertentu, Anda dapat memantau kolom tersebut menggunakan Analyzer. Analyzer adalah cara untuk mengumpulkan statistik data tanpa mendefinisikan aturan eksplisit. Contoh konfigurasi Analyzer ditunjukkan di bawah ini:

Analyzers = [ AllStatistics "fare_amount", DistinctValuesCount "pulocationid", RowCount ]

Dalam contoh ini, tiga Analyzer dikonfigurasi:

  1. Analyzer pertama, `AllStatistics “fare_amount"`, akan menangkap semua statistik yang tersedia untuk bidang `fare_amount`.

  2. Analyzer kedua, `DistinctValuesCount “pulocationid"`, akan menangkap jumlah nilai yang berbeda di kolom `pulocationid`.

  3. Analyzer ketiga, RowCount ``, akan menangkap jumlah total catatan dalam dataset.

Analyzer berfungsi sebagai cara sederhana untuk mengumpulkan statistik data yang relevan tanpa menentukan aturan yang rumit. Dengan memantau statistik ini, Anda dapat memperoleh wawasan tentang kualitas data dan mengidentifikasi potensi masalah atau anomali yang mungkin memerlukan penyelidikan lebih lanjut atau pembuatan aturan khusus.

Statistik data

Baik Analyzer dan Aturan dalam AWS Kualitas Data Glue mengumpulkan statistik data, juga dikenal sebagai profil data. Statistik ini memberikan wawasan tentang karakteristik dan kualitas data Anda. Statistik yang dikumpulkan disimpan dari waktu ke waktu dalam layanan AWS Glue, memungkinkan Anda melacak dan menganalisis perubahan dalam profil data Anda.

Anda dapat dengan mudah mengambil statistik ini dan menuliskannya ke Amazon S3 untuk analisis lebih lanjut atau penyimpanan jangka panjang dengan memanggil API yang sesuai. Fungsi ini memungkinkan Anda untuk mengintegrasikan profil data ke dalam alur kerja pemrosesan data Anda dan memanfaatkan statistik yang dikumpulkan untuk berbagai tujuan, seperti pemantauan kualitas data, deteksi anomali.

Dengan menyimpan profil data di Amazon S3, Anda dapat memanfaatkan skalabilitas, daya tahan, dan efektivitas biaya layanan penyimpanan objek Amazon. Selain itu, Anda dapat memanfaatkan AWS layanan lain atau alat pihak ketiga untuk menganalisis dan memvisualisasikan profil data, memungkinkan Anda memperoleh wawasan yang lebih dalam tentang kualitas data Anda dan membuat keputusan berdasarkan informasi tentang manajemen dan tata kelola data.

Berikut adalah contoh statistik data yang disimpan dari waktu ke waktu.

Tangkapan layar menunjukkan grafik garis statistik kualitas data dari waktu ke waktu.
catatan

AWS Glue Data Quality akan mengumpulkan statistik hanya sekali, bahkan jika Anda memiliki R ule dan Analyzer untuk kolom yang sama, membuat proses pembuatan statistik efisien.

Deteksi Anomali

AWS Kualitas Data Glue membutuhkan minimal tiga titik data untuk mendeteksi anomali. Ini menggunakan algoritma pembelajaran mesin untuk belajar dari tren masa lalu dan kemudian memprediksi nilai masa depan. Ketika nilai aktual tidak termasuk dalam kisaran yang diprediksi, Kualitas Data AWS Lem menciptakan Observasi Anomali. Ini memberikan representasi visual dari nilai aktual dan tren. Empat nilai ditampilkan pada grafik di bawah ini.

Tangkapan layar menunjukkan grafik garis peristiwa deteksi anomali kualitas data dari waktu ke waktu.
  1. Statistik aktual dan trennya dari waktu ke waktu.

  2. Tren yang diturunkan dengan belajar dari tren yang sebenarnya. Ini berguna untuk memahami arah tren.

  3. Batas atas yang mungkin untuk statistik.

  4. Batas bawah yang mungkin untuk statistik.

  5. Aturan kualitas data yang direkomendasikan yang dapat mendeteksi masalah ini di masa mendatang.

Ada beberapa hal penting yang perlu diperhatikan mengenai Anomali:

  • Ketika anomali dihasilkan, skor kualitas data tidak terpengaruh.

  • Ketika anomali terdeteksi, itu dianggap normal untuk proses berikutnya. Algoritma pembelajaran mesin akan mempertimbangkan nilai anomali ini sebagai input kecuali secara eksplisit dikecualikan.

Mode deteksi anomali

AWS Glue Data Quality mendukung dua mode deteksi anomali yang mengontrol bagaimana model pembelajaran mesin memprediksi nilai yang diharapkan. Anda dapat memilih mode yang paling sesuai dengan karakteristik data dan pola pemantauan Anda.

  • Linear (default) — Model tren dan musim dalam data Anda dari waktu ke waktu. Model mempelajari pola pertumbuhan dan perilaku siklus dari titik data historis dan mengekstrapolasinya ke depan. Gunakan mode ini ketika data Anda menunjukkan tren naik atau turun yang konsisten, pola musiman mingguan atau harian, atau saat Anda menjalankan evaluasi pada jadwal reguler.

  • Tet ap - Memperlakukan semua titik data dengan jarak yang sama terlepas dari interval waktu aktual antara proses evaluasi. Model menetapkan garis dasar dari nilai yang diamati tanpa mengasumsikan pertumbuhan atau peluruhan berbasis waktu. Gunakan mode ini ketika data Anda datar atau berfluktuasi secara acak, saat Anda menjalankan evaluasi pada interval yang tidak teratur, atau untuk analisis eksplorasi di lingkungan notebook.

Memilih mode

Tabel berikut merangkum kapan harus menggunakan setiap mode.

Gunakan mode Linear saat Gunakan mode Tetap saat
Data Anda memiliki tren naik atau turun yang konsisten Data Anda datar atau tidak memiliki pola yang dapat diprediksi
Data Anda menunjukkan pola musiman (mingguan, harian) Data Anda berfluktuasi secara acak
Anda menjalankan evaluasi pada jadwal reguler Anda menjalankan evaluasi pada interval yang tidak teratur atau tidak dapat diprediksi
Anda perlu mendeteksi kapan tren yang mapan pecah Anda melakukan analisis eksplorasi di buku catatan
Ada kesenjangan panjang antara proses dan data mengikuti pola yang diketahui Perubahan data didorong oleh pengguna dan bukan mencerminkan pola bisnis alami

Mengkonfigurasi mode pengamatan

Anda dapat mengatur mode observasi saat memulai evaluasi kualitas data.

Untuk Katalog AWS Data Lem, gunakan ObservationMode bidang dalam AdditionalRunOptions parameter:

aws glue start-data-quality-ruleset-evaluation-run \ --data-source '{ "GlueTable": { "DatabaseName": "my_database", "TableName": "my_table" } }' \ --role "arn:aws:iam::123456789012:role/GlueServiceRole" \ --ruleset-names '["my_ruleset"]' \ --additional-run-options '{ "ObservationScope": "ALL", "ObservationMode": "FIXED" }'

Untuk pekerjaan AWS Glue ETL, gunakan observations.mode opsi:

additional_options = { "observations.scope": "ALL", "observations.mode": "FIXED" } result = EvaluateDataQuality.process_rows( frame=dynamic_frame, ruleset=ruleset, publishing_options=publishing_options, additional_options=additional_options )

Jika Anda tidak menentukan mode, deteksi anomali menggunakan LINEAR mode secara default.

Pelatihan Ulang

Melatih ulang model deteksi anomali sangat penting untuk mendeteksi anomali yang tepat. Ketika anomali terdeteksi AWS , Kualitas Data Lem mencakup anomali dalam model sebagai nilai normal. Untuk memastikan deteksi anomali bekerja secara akurat, penting untuk memberikan umpan balik dengan mengakui atau menolak anomali. AWS Glue Data Quality menyediakan mekanisme baik di AWS Glue Studio maupun API untuk memberikan umpan balik ke model. Untuk mengetahui lebih lanjut, lihat dokumentasi tentang pengaturan Deteksi Anomali di saluran pipa AWS Glue ETL. Anda juga dapat mengaktifkan deteksi anomali untuk tabel di Katalog Data AWS Glue dengan menjalankan evaluasi berjalan dengan ObservationScope set toALL.

Rincian algoritma Deteksi Anomali

  • Algoritma Deteksi Anomali memeriksa statistik data dari waktu ke waktu. Algoritma mempertimbangkan semua titik data yang tersedia dan mengabaikan statistik apa pun yang secara eksplisit dikecualikan.

  • Statistik data ini disimpan dalam layanan AWS Glue, dan Anda dapat memberikan AWS KMS kunci untuk mengenkripsinya. Lihat Panduan Keamanan tentang cara menyediakan AWS KMS kunci untuk mengenkripsi statistik Kualitas Data AWS Glue.

  • Komponen waktu sangat penting untuk algoritma Deteksi Anomali. Berdasarkan nilai masa lalu, AWS Kualitas Data Lem menentukan batas atas dan bawah. Selama penentuan ini, ia mempertimbangkan komponen waktu. Batas akan berbeda untuk nilai yang sama selama interval satu menit, interval per jam, atau interval harian.

Menangkap musiman

AWS Algoritma deteksi anomali Glue Data Quality dapat menangkap pola musiman. Misalnya, dapat memahami bahwa pola hari kerja berbeda dari pola akhir pekan. Hal ini dapat dilihat pada contoh di bawah ini, di mana AWS Glue Data Quality mendeteksi tren musiman dalam nilai data. Anda tidak perlu melakukan sesuatu yang spesifik untuk mengaktifkan kemampuan ini. Seiring waktu, AWS Glue Data Quality mempelajari tren musiman dan mendeteksi anomali ketika pola-pola ini rusak.

Tangkapan layar menunjukkan tab kualitas data dengan data yang menunjukkan anomali saat menangkap tren musiman.

Biaya

Anda akan dikenakan biaya berdasarkan waktu yang dibutuhkan untuk mendeteksi anomali. Setiap statistik dikenakan biaya 1 DPU untuk waktu yang dibutuhkan untuk mendeteksi anomali. Lihat Harga AWS Lem untuk contoh terperinci.

Pertimbangan utama

Tidak ada biaya untuk menyimpan statistik. Namun, ada batas 100.000 statistik per akun. Statistik ini akan disimpan maksimal dua tahun.