Data Quality memungkinkan Anda mengonfigurasi aturan pemantauan kualitas untuk tabel data. Aturan ini dapat digunakan untuk memantau apakah data tabel memenuhi persyaratan Anda, secara otomatis memblokir tugas bermasalah, serta mencegah penyebaran dirty data ke downstream, sehingga memastikan data output sesuai ekspektasi. Topik ini menjelaskan cara mengonfigurasi, menjalankan, dan mengelola aturan pemantauan kualitas untuk tabel tertentu.
Prasyarat
Sebelum mengonfigurasi aturan kualitas untuk tabel data engine, Anda harus terlebih dahulu mengakuisisi metadata-nya. Untuk informasi lebih lanjut, lihat Akuisisi metadata.
Batasan
-
Batasan sumber data: Aturan pemantauan kualitas hanya didukung untuk sumber data MaxCompute, E-MapReduce, Hologres, CDH Hive, AnalyticDB for PostgreSQL, AnalyticDB for MySQL, StarRocks, MySQL, SQL Server, DLF, dan Lindorm.
-
Batasan jaringan: Setelah mengonfigurasi aturan, node penjadwalan yang menghasilkan data tabel harus menggunakan resource group dengan koneksi jaringan aktif untuk memicu pemeriksaan aturan Data Quality.
-
Batasan efektivitas aturan: Aturan yang menggunakan ambang batas dinamis memerlukan setidaknya 21 hari data sampel agar berfungsi dengan benar. Jika data Anda kurang dari 21 hari, pemeriksaan aturan mungkin gagal atau menghasilkan hasil yang tidak akurat. Dalam kasus ini, Anda dapat mengonfigurasi aturan, mengaitkannya dengan tugas penjadwalan, lalu menggunakan fitur backfill untuk menghasilkan data sampel yang diperlukan.
Komponen inti pemantauan kualitas
Mengonfigurasi aturan kualitas untuk sebuah tabel akan membuat rencana pemantauan kualitas lengkap yang terdiri dari empat komponen utama:
-
Cakupan pemantauan: Menentukan aset target untuk pemeriksaan kualitas data. Konfigurasi mencakup:
-
Monitored Object: Tabel fisik atau beberapa tabel yang dipilih untuk pemeriksaan kualitas data. Anda dapat memantau tabel partisi maupun tabel non-partisi.
-
Data range: Untuk tabel partisi, ekspresi filter partisi secara dinamis menentukan partisi mana yang akan dipindai selama setiap pemeriksaan. Misalnya, gunakan
$[yyyymmdd-1]untuk memeriksa data partisi dari hari sebelum tanggal bisnis.
-
-
Monitoring Rule: Menentukan logika validasi spesifik dan standar pengukuran untuk menilai apakah data memenuhi ekspektasi.
-
Definisi aturan: Anda dapat menambahkan satu atau beberapa aturan kualitas ke objek yang dipantau. Setiap aturan diinstansiasi dari templat aturan, yang dapat berupa salah satu jenis berikut:
-
System template: Templat bawaan DataWorks yang mencakup berbagai dimensi, seperti integritas, keunikan, dan validitas. Contohnya termasuk "fluktuasi jumlah baris tabel" dan "jumlah nilai unik bidang".
-
Custom template: Templat yang ditentukan pengguna untuk membuat logika validasi yang dapat digunakan ulang dan dipersonalisasi dengan menulis SQL.
-
-
Properti aturan: Anda harus mengonfigurasi properti utama untuk setiap aturan, termasuk ambang batas (misalnya, laju fluktuasi tidak melebihi 30%) dan tingkat keparahannya (strong rule atau weak rule). Jika pemeriksaan strong rule gagal, hal tersebut dapat memblokir tugas penjadwalan terkait.
-
-
Trigger Method: Menentukan kapan tugas pemantauan kualitas dijalankan.
-
Scheduled trigger: Mengaitkan pemantauan kualitas dengan node penjadwalan DataWorks upstream, biasanya node yang menghasilkan tabel yang dipantau. Ketika node penjadwalan berhasil dijalankan, aturan kualitas terkait akan secara otomatis dipicu. Ini merupakan praktik terbaik untuk jaminan kualitas data otomatis.
-
Triggered Manually: Proses validasi tidak dikaitkan dengan tugas penjadwalan; Anda harus memulainya secara manual dari UI. Metode ini cocok untuk eksplorasi dan validasi data sementara yang bersifat satu kali.
-
-
Alert policy: Mengonfigurasi strategi notifikasi ketika ditemukan masalah kualitas data.
-
Alert subscription: Anda dapat mengonfigurasi peringatan untuk hasil pemeriksaan aturan tertentu, seperti "failed" atau "warning". Sistem mendukung pengiriman notifikasi melalui berbagai saluran, termasuk email, SMS, panggilan telepon, DingTalk, Lark, chatbot WeCom, dan webhook kustom.
-
Mengonfigurasi keempat komponen ini dan menyimpan pengaturannya akan membuat rencana pemantauan kualitas lengkap. Sebelum menerapkannya ke lingkungan produksi, kami menyarankan Anda menggunakan fitur test run untuk memverifikasi konfigurasi Anda.
Prosedur
Langkah 1: Buka halaman detail kualitas tabel
-
Login ke DataWorks console. Di wilayah target, klik di panel navigasi sebelah kiri. Pilih ruang kerja dari daftar drop-down dan klik Go to Data Quality.
-
Buka halaman konfigurasi aturan untuk tabel.
Di panel navigasi sebelah kiri, klik untuk membuka halaman konfigurasi aturan.
-
Dari daftar Connection di sebelah kiri, pilih database yang berisi tabel tempat Anda ingin mengonfigurasi aturan.
-
Filter tabel berdasarkan kriteria seperti tipe database, database, dan nama tabel. Klik nama tabel target, atau klik Rule Management di kolom Actions untuk membuka halaman detail kualitas tabel.
Halaman ini menampilkan semua monitor dan aturan kualitas untuk tabel tersebut. Anda dapat memfilter aturan berdasarkan apakah aturan tersebut dikaitkan dengan monitor kualitas dan menentukan mode jalannya untuk aturan yang tidak dikaitkan.
-
Langkah 2: Buat monitor kualitas
-
Buat monitor kualitas.
Anda dapat membuat monitor kualitas dengan salah satu cara berikut:
-
Metode 1: Di halaman Table Quality Details, klik tab Rule Management. Klik ikon
di samping Monitor Perspective untuk membuat monitor kualitas. -
Metode 2: Di halaman Table Quality Details, beralih ke tab pemantauan kualitas. Klik Create Monitor.
-
-
Konfigurasi parameter untuk monitor kualitas.
Parameter
Parameter
Deskripsi
Basic Configurations
Monitor Name
Masukkan nama kustom untuk monitor kualitas.
Quality Monitoring Owner
Tentukan pemilik untuk monitor kualitas. Dalam langganan peringatan, Anda dapat menetapkan pemilik ini sebagai penerima untuk notifikasi Email, Email and SMS, atau Telephone.
Monitored Object
Objek yang akan diperiksa kualitas datanya. Secara default, ini adalah tabel saat ini.
Data Scope
Gunakan ekspresi filter partisi untuk menentukan partisi tabel yang akan diperiksa.
-
Tabel non-partisi: Anda tidak perlu mengonfigurasi parameter ini. Secara default, Full Table diperiksa.
-
Tabel partisi: Ekspresi harus dalam format
partition_name=partition_value. Nilai partisi dapat berupa nilai tetap atau nilai dari Lampiran 2: Ekspresi filter partisi bawaan.
CatatanPengaturan ini diabaikan ketika Anda mengonfigurasi aturan menggunakan templat kustom atau SQL kustom, karena SQL kustom itu sendiri yang menentukan partisi mana yang diperiksa.
Select Monitoring Rule
Select Monitoring Rule
Pilih aturan kualitas data yang akan diterapkan pada rentang data yang ditentukan.
Catatan-
Anda dapat membuat beberapa monitor kualitas untuk partisi berbeda dan mengaitkan masing-masing dengan aturan kualitas data yang berbeda.
-
Jika Anda belum membuat aturan kualitas data, Anda dapat melewati langkah ini. Anda dapat membuat monitor kualitas terlebih dahulu, lalu menambahkan aturan ke dalamnya nanti. Untuk informasi lebih lanjut tentang cara membuat aturan kualitas data, lihat Langkah 3. Konfigurasi aturan kualitas data.
Running Settings
Trigger Method
Metode yang memicu monitor kualitas.
-
Triggered by Node Scheduling in Production Environment: Mengaitkan monitor kualitas dengan tugas terjadwal periodik tertentu di DataWorks Operation Center. Setelah tugas berhasil dijalankan, aturan kualitas data dalam monitor kualitas ini akan secara otomatis dipicu. Tugas dry-run tidak memicu pemeriksaan aturan kualitas data.
-
Triggered Manually: Memulai secara manual aturan kualitas data yang dikaitkan dengan monitor kualitas saat ini.
PentingJika tabel yang Anda pantau bukan tabel MaxCompute dan Anda menetapkan Trigger Method ke Triggered by Node Scheduling in Production Environment, tugas terjadwal periodik yang dipilih tidak boleh menggunakan resource group penjadwalan publik. Jika tidak, akan terjadi error saat monitor kualitas dijalankan.
Associated Auto Triggered Node
Jika Anda menetapkan Trigger Method ke Triggered by Node Scheduling in Production Environment, Anda dapat mengonfigurasi parameter ini untuk menentukan node penjadwalan terkait. Setelah node penjadwalan yang ditentukan berhasil dijalankan, aturan kualitas data akan secara otomatis dipicu.
Resources
Sumber daya komputasi yang digunakan untuk menjalankan pemeriksaan aturan kualitas data. Secara default, sumber data tabel yang dipantau di ruang kerja dipilih. Jika Anda memilih sumber data lain, pastikan sumber dayanya dapat mengakses tabel tersebut.
Handling Policies
Quality Issue Handling Policies
Kebijakan yang diterapkan ketika terdeteksi masalah kualitas data.
-
Alert: Ketika terdeteksi masalah kualitas data, notifikasi peringatan dikirim ke subscriber monitor kualitas.
Kondisi default adalah:
Strong rule - Critical anomaly,Strong rule - Warning anomaly,Strong rule - Check failed,Weak rule - Critical anomaly,Weak rule - Warning anomaly, danWeak rule - Check failed. -
Blocks: Ketika terdeteksi masalah kualitas data, sistem akan menggagalkan node penjadwalan produksi pemicu dan memblokir node downstream-nya. Tindakan ini memblokir pipeline produksi untuk mencegah penyebaran data bermasalah.
Kondisi default adalah
Strong rule - Critical anomaly.PentingJika Anda menetapkan kebijakan ke Blocks, peringatan juga akan dipicu ketika terdeteksi masalah kualitas data.
Alert Method Configuration
Anda dapat mengirim notifikasi peringatan melalui Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook, atau Telephone.
Catatan-
Untuk menggunakan chatbot DingTalk, Lark, atau Enterprise WeChat, tambahkan chatbot untuk mendapatkan URL webhook-nya, lalu tempelkan URL tersebut ke pengaturan langganan peringatan.
-
Metode Custom Webhook hanya didukung di DataWorks Enterprise Edition. Untuk informasi tentang format pesan notifikasi peringatan yang dikirim DataWorks melalui Custom Webhook, lihat Lampiran: Format pesan Webhook.
-
Jika Anda memilih Email, Email and SMS, atau Telephone sebagai metode notifikasi, Anda dapat menetapkan Authorized object ke Data Quality Monitoring Owner, Shift Schedule, atau Scheduling Task Owner.
-
Data Quality Monitoring Owner: Mengirim notifikasi peringatan ke Quality Monitoring Owner yang ditentukan di bagian Basic Configurations monitor kualitas saat ini.
-
Shift Schedule: Ketika node penjadwalan terkait memicu peringatan kualitas, sistem mengirim notifikasi ke pengguna yang bertugas hari ini dalam jadwal shift.
-
Scheduling Task Owner: Notifikasi peringatan akan dikirim ke Head dari node penjadwalan yang dikaitkan dengan monitor kualitas.
-
-
-
Klik Save untuk membuat monitor kualitas.
Langkah 3: Konfigurasi aturan kualitas data
Anda dapat mengonfigurasi aturan kualitas berdasarkan templat aturan tingkat tabel dan tingkat bidang bawaan. Untuk informasi lebih lanjut tentang templat aturan bawaan, lihat Lihat templat aturan bawaan.
-
Di halaman Table Quality Details, klik tab Rule Management, pilih monitor kualitas yang telah Anda buat, lalu klik Create Rule untuk membuka halaman konfigurasi aturan.
-
Buat aturan kualitas data.
Data Quality menyediakan metode berikut untuk mengonfigurasi aturan. Pilih metode yang paling sesuai dengan kebutuhan bisnis Anda.
Metode 1: System template
Data Quality menyediakan puluhan templat aturan bawaan. Di panel sebelah kiri, klik + Use di samping templat untuk segera membuat aturan kualitas. Anda dapat menambahkan beberapa aturan sekaligus.
Anda dapat mengklik + System template rule di bagian atas lalu memodifikasi parameter Template untuk mengubah templat aturan.
Metode 2: Custom template
CatatanSebelum membuat aturan menggunakan templat kustom, Anda harus membuka untuk membuat templat aturan kustom. Untuk informasi lebih lanjut, lihat Buat dan kelola templat aturan kustom.
Ketika menggunakan templat kustom, konfigurasi dasarnya, seperti parameter FLAG parameter dan validasi SQL, akan diisi secara otomatis. Anda dapat menentukan Rule Name kustom dan mengonfigurasi ambang batas pemantauan berdasarkan jenis aturan. Misalnya, aturan numerik memerlukan ambang batas normal dan ambang batas kritis, sedangkan aturan jenis fluktuasi juga memerlukan ambang peringatan.
Metode 3: Custom SQL
Metode ini memungkinkan Anda menyesuaikan logika validasi kualitas data untuk tabel.
Metode 4: Custom script
Aturan skrip kustom mendukung validasi data tingkat jam dan tingkat menit. Untuk informasi tentang cara menulis aturan skrip, lihat Gunakan templat aturan sistem. Contoh:
- assertion: change 30 minutes ago for max(id) = 15 name: 30-minute difference in max value of id field is 15 -
(Opsional) Tambahkan aturan yang telah dikonfigurasi ke monitor kualitas. Untuk informasi lebih lanjut tentang monitor kualitas, lihat Langkah 2. Buat monitor kualitas.
CatatanAturan kualitas hanya dapat dipicu setelah Anda menambahkannya ke monitor kualitas. Di sini Anda dapat memilih monitor kualitas yang sudah ada, atau memilih aturan kualitas ini di langkah Select quality rules saat mengonfigurasi monitor kualitas.
-
Klik Confirm.
Langkah 4: Uji aturan
Anda dapat menguji aturan monitor kualitas dengan cara berikut.
Tab manajemen aturan
-
Di tab Rule Management, di bawah Monitor Perspective, temukan monitor kualitas yang telah Anda buat dan klik Test Run.
-
Di kotak dialog Test Run, konfirmasi parameter seperti Data Scope dan Scheduled Time, lalu klik Test Run. Ketika muncul pesan Started, Anda dapat mengklik View Details untuk melihat detail test run.
Tab pemantauan kualitas
-
Di tab Monitor, temukan monitor kualitas yang telah Anda buat, lalu klik Test di kolom Actions.
-
Di kotak dialog Test Run, konfirmasi parameter seperti Data Scope dan Scheduled Time, lalu klik Test Run. Ketika muncul pesan Started, Anda dapat mengklik View Details untuk melihat detail test run.
Langkah 5: Ubah langganan peringatan
Anda telah mengonfigurasi langganan peringatan di Langkah 2. Buat monitor kualitas. Ketika aturan dipicu, sistem mengirim notifikasi ke penerima peringatan yang ditentukan. Jika perlu mengubah penerima peringatan, Anda dapat memodifikasi langganan peringatan dengan salah satu cara berikut.
Tab manajemen aturan
-
Di tab Rule Management, di bawah Monitor Perspective, temukan monitor kualitas yang telah Anda buat, klik
, lalu pilih Alert Subscription. -
Di kotak dialog Alert Subscription, setelah menambahkan Notification Method dan Recipient, klik Save di kolom Actions. Setelah disimpan, Anda dapat menambahkan metode notifikasi lainnya.
Metode notifikasi yang didukung meliputi Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook, dan Telephone.
Catatan-
Untuk menggunakan chatbot DingTalk, Lark, atau Enterprise WeChat, tambahkan chatbot untuk mendapatkan URL webhook-nya, lalu tempelkan URL tersebut ke pengaturan langganan peringatan.
-
Metode Custom Webhook hanya didukung di DataWorks Enterprise Edition. Untuk informasi tentang format pesan notifikasi peringatan yang dikirim DataWorks melalui Custom Webhook, lihat Lampiran: Format pesan Webhook.
-
Jika Anda memilih Email, Email and SMS, atau Telephone sebagai metode notifikasi, Anda dapat menetapkan Authorized object ke Data Quality Monitoring Owner, Shift Schedule, atau Scheduling Task Owner.
-
Data Quality Monitoring Owner: Mengirim notifikasi peringatan ke Quality Monitoring Owner yang ditentukan di bagian Basic Configurations monitor kualitas saat ini.
-
Shift Schedule: Ketika node penjadwalan terkait memicu peringatan kualitas, sistem mengirim notifikasi ke pengguna yang bertugas hari ini dalam jadwal shift.
-
Scheduling Task Owner: Notifikasi peringatan akan dikirim ke Head dari node penjadwalan yang dikaitkan dengan monitor kualitas.
-
-
Tab pemantauan kualitas
-
Di tab Monitor, temukan monitor kualitas yang telah Anda buat, lalu pilih di kolom Actions.
-
Di kotak dialog Alert Subscription, setelah menambahkan Notification Method dan Recipient, klik Save di kolom Actions. Setelah disimpan, Anda dapat menambahkan metode notifikasi lainnya.
Metode notifikasi yang didukung meliputi Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Chatbot, Custom Webhook, dan Telephone.
Catatan-
Untuk menggunakan chatbot DingTalk, Lark, atau Enterprise WeChat, tambahkan chatbot untuk mendapatkan URL webhook-nya, lalu tempelkan URL tersebut ke pengaturan langganan peringatan.
-
Metode Custom Webhook hanya didukung di DataWorks Enterprise Edition. Untuk informasi tentang format pesan notifikasi peringatan yang dikirim DataWorks melalui Custom Webhook, lihat Lampiran: Format pesan Webhook.
-
Jika Anda memilih Email, Email and SMS, atau Telephone sebagai metode notifikasi, Anda dapat menetapkan Authorized object ke Data Quality Monitoring Owner, Shift Schedule, atau Scheduling Task Owner.
-
Data Quality Monitoring Owner: Mengirim notifikasi peringatan ke Quality Monitoring Owner yang ditentukan di bagian Basic Configurations monitor kualitas saat ini.
-
Shift Schedule: Ketika node penjadwalan terkait memicu peringatan kualitas, sistem mengirim notifikasi ke pengguna yang bertugas hari ini dalam jadwal shift.
-
Scheduling Task Owner: Notifikasi peringatan akan dikirim ke Head dari node penjadwalan yang dikaitkan dengan monitor kualitas.
-
-
Langkah selanjutnya
Setelah monitor kualitas dijalankan, buka Quality O&M di panel navigasi sebelah kiri dan klik Monitor dan Running Records untuk melihat status pemeriksaan kualitas tabel dan catatan lengkap pemeriksaan aturan kualitasnya.
Lampiran
Lampiran 1: Rumus laju fluktuasi dan varians
-
Rumus laju fluktuasi:
laju fluktuasi = (nilai sampel - nilai garis dasar) / nilai garis dasar-
nilai sampel: Nilai sampel hari ini. Misalnya, untuk pemeriksaan laju fluktuasi 1 hari pada jumlah baris tabel tugas SQL, nilai sampel adalah jumlah baris partisi hari ini.
-
nilai garis dasar: Nilai referensi dari sampel historis.
Catatan-
Jika aturan adalah pemeriksaan
jumlah baris tabel tugas SQL, laju fluktuasi 1 hari, nilai garis dasarnya adalah jumlah baris partisi hari sebelumnya. -
Jika aturan adalah pemeriksaan
jumlah baris tabel tugas SQL, laju fluktuasi rata-rata 7 hari, nilai garis dasarnya adalah rata-rata jumlah baris dari 7 hari sebelumnya.
-
-
Rumus varians:
(nilai sampel saat ini - rata-rata N hari terakhir) / deviasi standarCatatanAnda hanya dapat menggunakan varians untuk tipe numerik seperti BIGINT dan DOUBLE.
Lampiran 2: Ekspresi partisi bawaan
Asumsikan skenario berikut:
-
Waktu data (bizdate) adalah
20240524 -
Waktu penjadwalan adalah
10:30:00
|
Ekspresi partisi |
Deskripsi |
Contoh |
|
|
Memeriksa data partisi untuk timestamp data saat ini. |
|
|
|
Memeriksa data partisi untuk hari sebelum timestamp data. |
|
|
|
Memeriksa data partisi untuk 7 hari sebelum timestamp data (seminggu yang lalu). |
|
|
|
Memeriksa data partisi untuk hari yang sama pada bulan sebelumnya. |
|
|
|
Memeriksa partisi untuk timestamp data saat ini, hingga detik waktu penjadwalan. |
|
|
|
Memeriksa partisi untuk tengah malam (00:00:00) timestamp data saat ini. |
|
|
|
Memeriksa partisi untuk waktu satu jam sebelum waktu penjadwalan. |
|
|
|
(Untuk partisi per jam) Memeriksa partisi untuk jam sebelumnya. Formatnya biasanya |
|
|
|
(Untuk partisi tingkat menit) Memeriksa partisi untuk waktu 30 menit sebelum waktu penjadwalan. Formatnya biasanya |
|
|
|
(Untuk partisi dua tingkat) Memeriksa semua partisi per jam untuk hari sebelum timestamp data. |
Semua partisi dari |