Gunakan Data Quality untuk mendeteksi data kotor dan perubahan pada data sumber dalam pipeline profil pengguna sebelum mencapai pemrosesan downstream.
Prasyarat
Sebelum memulai, pastikan Anda telah menyelesaikan tutorial berikut secara berurutan:
Sinkronisasi data — menyinkronkan
ods_user_info_ddari ApsaraDB RDS for MySQL danuser_log.txtdari Object Storage Service (OSS) ke tabel MaxCompute menggunakan Data IntegrationProses data — memproses data yang telah disinkronkan menjadi data profil pengguna dasar di DataStudio
Latar Belakang
Data Quality memantau tabel MaxCompute berdasarkan aturan yang dikonfigurasi dan membantu Anda menjawab pertanyaan seperti:
Apakah pekerjaan sinkronisasi hari ini menulis data ke partisi yang diharapkan?
Apakah fluktuasi jumlah baris di tabel hasil mengindikasikan adanya anomali lalu lintas?
Apakah terdapat primary key duplikat yang dapat merusak agregasi downstream?
Saat pelanggaran aturan terdeteksi, Data Quality akan memblokir penjadwalan node—mencegah penyebaran data kotor—atau mengirim notifikasi peringatan, tergantung pada jenis aturan yang Anda konfigurasi.
Jenis aturan dan respons terhadap pelanggaran:
| Jenis aturan | Ambang batas kritis terlampaui | Pengecualian lainnya |
|---|---|---|
| Strong rule | Node ditandai sebagai Failed; node turunan diblokir | Pemberitahuan peringatan dikirim |
| Weak rule | Peringatan kritis dikirim; node turunan tidak diblokir | Pemberitahuan peringatan dikirim |
Tutorial ini mengonfigurasi aturan pemantauan untuk tiga tabel dalam pipeline profil pengguna:
| Tabel | Kebutuhan pemantauan |
|---|---|
ods_raw_log_d_odps | Pemeriksaan jumlah baris harian tidak nol (strong rule) |
ods_user_info_d_odps | Pemeriksaan jumlah baris harian tidak nol (strong rule) + pemeriksaan keunikan primary key (weak rule) |
dwd_log_info_di_odps | Tidak memerlukan aturan |
dws_user_info_all_di_odps | Tidak memerlukan aturan |
ads_user_info_1d_odps | Pemeriksaan volatilitas jumlah baris selama 7 hari (weak rule) + pemeriksaan jumlah baris tidak nol (strong rule) |
Buka halaman Configure by table
Masuk ke Konsol DataWorks. Di bilah navigasi atas, pilih Wilayah target. Di panel navigasi kiri, pilih Data Governance > Data Quality. Pilih ruang kerja target dari daftar drop-down, lalu klik Go to Data Quality.
Di panel navigasi kiri halaman Data Quality, pilih Configure Rules > Configure by Table.
Di halaman Configure by Table, filter tabel menggunakan pengaturan berikut:
Connection: MaxCompute
MaxCompute category: pilih proyek saat ini di lingkungan produksi (tutorial ini menggunakan
workshop2024_01)
Di sisi kanan, cari tabel
ods_raw_log_d_odps,ods_user_info_d_odps, danads_user_info_1d_odps. Untuk setiap tabel, klik Create Monitor di kolom Actions untuk membuka halaman Table Quality Details.
Konfigurasikan aturan pemantauan untuk ods_raw_log_d_odps
Tabel ods_raw_log_d_odps menyimpan log akses website yang disinkronkan dari OSS. Pemeriksaan jumlah baris tidak nol memastikan pekerjaan sinkronisasi telah menulis data sebelum pemrosesan downstream dimulai.
Langkah 1: Buat monitor
Monitor menentukan partisi mana yang akan diperiksa dan apa yang memicu pemeriksaan tersebut.
Di tab Monitor, klik Create Monitor.
Atur parameter berikut:
Untuk detail lengkap parameter, lihat Configure a monitoring rule for a single table.
Parameter Nilai Data Range dt=$[yyyymmdd-1]Trigger Method Dipicu oleh Node Scheduling di Lingkungan Produksi — pilih node ods_raw_log_d_odpsyang dibuat selama sinkronisasi dataMonitoring Rule Biarkan kosong. Aturan akan dilampirkan pada langkah berikutnya.
Langkah 2: Buat aturan pemantauan
Di tab Rule Management, pada bagian Monitor Perspective, pilih monitor
raw_log_number_of_table_rows_not_0. Klik Create Rule.Di tab System Template, temukan aturan Table is not empty lalu klik Use.
Di sisi kanan panel, atur Degree of Importance menjadi Strong Rule.
Dengan strong rule, jika jumlah baris di partisi target adalah 0, Data Quality akan memicu peringatan, menetapkan node
ods_raw_log_d_odpssebagai Failed, dan memblokir semua node turunan.Klik Determine.
Untuk parameter aturan lainnya, lihat Configure a monitoring rule for a single table.
Langkah 3: Jalankan pengujian
Jalankan pengujian untuk memverifikasi konfigurasi aturan berfungsi sesuai harapan.
Di bagian Monitor Perspective, pilih monitor
raw_log_number_of_table_rows_not_0lalu klik Test Run.Di kotak dialog Test Run, atur Scheduling Time lalu klik Test Run.
Setelah pengujian selesai, klik View Details untuk memeriksa apakah data lolos.
Langkah 4: Berlangganan peringatan
Berlangganan monitor untuk menerima notifikasi peringatan saat terjadi pelanggaran aturan.
Di bagian Monitor Perspective, pilih monitor
raw_log_number_of_table_rows_not_0lalu klik Alert Subscription.Di kotak dialog Alert Subscription, konfigurasi Notification Method dan Recipient, lalu klik Save.
Untuk melihat semua monitor yang telah Anda langgani, pilih Quality O&M > Monitor di panel navigasi kiri, lalu pilih My Subscriptions.
Konfigurasikan aturan pemantauan untuk ods_user_info_d_odps
Tabel ods_user_info_d_odps menyimpan informasi pengguna dasar yang disinkronkan dari ApsaraDB RDS for MySQL. Dua aturan diterapkan: strong rule untuk mendeteksi partisi kosong dan weak rule untuk memeriksa keunikan primary key.
Langkah 1: Buat monitor
Di tab Monitor, klik Create Monitor.
Atur parameter berikut:
Untuk detail lengkap parameter, lihat Configure a monitoring rule for a single table.
Parameter Nilai Data Range dt=$[yyyymmdd-1]Trigger Method Dipicu oleh Node Scheduling di Lingkungan Produksi — pilih node ods_user_info_d_odpsyang dibuat selama sinkronisasi dataMonitoring Rule Biarkan kosong. Aturan akan dilampirkan pada langkah berikutnya.
Langkah 2: Buat aturan pemantauan
Di tab Rule Management, pada bagian Monitor Perspective, pilih monitor
user_info_quality_control. Klik Create Rule.Di tab System Template, temukan aturan Table is not empty lalu klik Use. Atur Degree of Importance menjadi Strong Rule.
Jika jumlah baris di partisi target adalah 0, Data Quality akan memicu peringatan, menetapkan node
ods_user_info_d_odpssebagai Failed, dan memblokir semua node turunan.Di tab System Template, temukan aturan Unique value. fixed value lalu klik Use. Konfigurasi hal berikut:
Rule Scope:
uid(STRING)Monitoring Threshold: Untuk ambang batas Normal, atur operator perbandingan menjadi
=dan nilai menjadi0Degree of Importance: Weak rules
Klik Determine.
Untuk parameter aturan lainnya, lihat Configure a monitoring rule for a single table.
Langkah 3: Jalankan pengujian dan berlangganan peringatan
Ikuti langkah-langkah yang sama seperti pada Langkah 3: Jalankan pengujian dan Langkah 4: Berlangganan peringatan untuk ods_raw_log_d_odps, menggunakan monitor user_info_quality_control.
Konfigurasikan aturan pemantauan untuk ads_user_info_1d_odps
Tabel ads_user_info_1d_odps merupakan tabel hasil akhir untuk analisis profil pengguna. Dua aturan diterapkan: weak rule yang memantau volatilitas jumlah baris selama 7 hari untuk mendeteksi perubahan lalu lintas yang tidak terduga, dan strong rule untuk memastikan tabel tidak kosong.
Apa yang dideteksi oleh aturan volatilitas:
| Tingkat peringatan | Kondisi | Respons |
|---|---|---|
| Normal | Perubahan jumlah baris ≤ 10% selama 7 hari | Tidak ada tindakan |
| Orange alert | Perubahan jumlah baris > 10% selama 7 hari | Pemberitahuan peringatan dikirim |
| Red alert | Perubahan jumlah baris > 50% selama 7 hari | Pemberitahuan peringatan dikirim |
Aturan volatilitas merupakan weak rule, sehingga meskipun ambang batas merah terlampaui, hanya peringatan kritis yang dikirim—node turunan tidak diblokir.
Langkah 1: Buat monitor
Di tab Monitor, klik Create Monitor.
Atur parameter berikut:
Untuk detail lengkap parameter, lihat Configure a monitoring rule for a single table.
Parameter Nilai Data Range dt=$[yyyymmdd-1]Trigger Method Dipicu oleh Node Scheduling di Lingkungan Produksi — pilih node ads_user_info_1d_odpsyang dibuat selama sinkronisasi dataMonitoring Rule Biarkan kosong. Aturan akan dilampirkan pada langkah berikutnya.
Langkah 2: Buat aturan pemantauan
Di tab Rule Management, pada bagian Monitor Perspective, pilih monitor
ads_user_info_quality_control. Klik Create Rule.Di tab System Template, temukan aturan Number of rows. 7-day volatility lalu klik Use. Konfigurasi hal berikut:
Monitoring Threshold:
Ambang batas Merah: operator perbandingan
>, nilai50%Ambang batas Orange: operator perbandingan
>, nilai10%Ambang batas Normal: operator perbandingan
<=, nilai10%
Degree of Importance: Weak rules
Di tab System Template, temukan aturan Table is not empty lalu klik Use. Atur Degree of Importance menjadi Strong Rule.
Klik Determine.
Untuk parameter aturan lainnya, lihat Configure a monitoring rule for a single table.
Langkah 3: Jalankan pengujian dan berlangganan peringatan
Ikuti langkah-langkah yang sama seperti pada Langkah 3: Jalankan pengujian dan Langkah 4: Berlangganan peringatan untuk ods_raw_log_d_odps, menggunakan monitor ads_user_info_quality_control.
Langkah berikutnya
Dengan pemantauan kualitas data yang telah diterapkan, visualisasikan data profil pengguna yang telah diproses menggunakan DataAnalysis. Untuk informasi lebih lanjut, lihat Visualize data.