Data Quality menyediakan templat aturan pemantauan bawaan tingkat tabel dan tingkat bidang. Alih-alih membuat aturan dari awal, Anda dapat memilih templat dan menerapkannya ke beberapa tabel atau bidang sekaligus—cara efisien untuk menerapkan pemeriksaan kualitas data yang konsisten di banyak tabel dalam gudang data berskala besar.
Sumber data yang didukung
Templat mendukung aturan pemantauan untuk sumber data berikut: MaxCompute, E-MapReduce (EMR), Hologres, CDH Hive, AnalyticDB for PostgreSQL, AnalyticDB for MySQL, StarRocks, MySQL, Lindorm, SQL Server, dan Data Lake Formation (DLF).
Sebelum memulai: Pilih jalur Anda
Gunakan tabel berikut untuk menentukan pendekatan konfigurasi sebelum memulai.
| Keputusan | Opsi A | Opsi B |
|---|---|---|
| Apa yang ingin Anda periksa? | Seluruh tabel (jumlah baris, tingkat null, duplikat) | Bidang tertentu (distribusi nilai, keunikan, format) |
| Jenis templat yang dipilih | Tingkat Tabel | Tingkat Bidang |
| Apakah Anda mengetahui rentang data yang diharapkan? | Ya — atur ambang batas secara manual | Tidak — biarkan sistem belajar dari data historis |
| Metode perbandingan yang digunakan | Pengaturan Manual | Ambang Batas Dinamis Cerdas |
Ambang Batas Dinamis Cerdas hanya tersedia untuk aturan berbasis pernyataan SQL kustom, rentang kustom, atau ambang batas dinamis.
Cara kerja
Mengonfigurasi aturan pemantauan dari templat melibatkan tiga tahap:
-
Select a template and configure rule parameters — Pilih templat bawaan Tingkat Tabel atau Tingkat Bidang dan atur metode perbandingan serta ambang batas yang menentukan seperti apa "data baik" itu.
-
Tambahkan tabel atau bidang secara batch — Pilih semua tabel atau bidang yang ingin dicakup oleh aturan tersebut.
-
Asosiasikan aturan dengan monitor kualitas — Monitor kualitas menentukan cakupan data (misalnya, partisi tertentu dari tabel terpartisi) dan menghubungkan aturan ke node penjadwalan yang memicu pemeriksaan secara otomatis.
Langkah 1: Buka halaman Konfigurasi berdasarkan Templat
-
Login 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 dan klik Go to Data Quality.
-
Di panel navigasi kiri, pilih Configure Rules > Configure by Template. Data Quality menampilkan templat aturan bawaan Table Level dan Field Level. Klik Configure Monitoring Rules untuk templat yang ingin Anda gunakan.

Langkah 2: Konfigurasi properti aturan
Pada halaman Batch Add Monitoring Rules, konfigurasikan pengaturan berikut.
Atribut dasar
| Parameter | Deskripsi |
|---|---|
| Data Source Type | Jenis sumber data untuk tabel yang akan dicakup oleh aturan ini. Lihat Sumber data yang didukung untuk daftar lengkapnya. |
| Rule Source | Menampilkan Built-in Template dan nama templat yang dipilih. Hanya-baca. Untuk daftar lengkap templat yang tersedia, lihat View built-in rule templates. |
| Template | Templat yang dipilih. |
| Rule Name | Dihasilkan otomatis. Sesuaikan akhiran nama sesuai kebutuhan. |
Properti lanjutan
Pilih metode perbandingan
| Metode | Kapan digunakan | Cara kerja ambang batas |
|---|---|---|
| Manual Settings | Anda mengetahui rentang data yang diharapkan atau batas fluktuasi. | Untuk hasil numerik, bandingkan dengan nilai yang diharapkan tetap menggunakan operator perbandingan. Atur Ambang Batas Normal (rentang yang diharapkan) dan Ambang Batas Merah (pelanggaran kritis). Untuk pemeriksaan berbasis fluktuasi, gunakan Nilai Absolut, Naik, atau Turun sebagai metode perbandingan, dan konfigurasikan Ambang Batas Normal. |
| Intelligent Dynamic Threshold | Anda tidak yakin nilai ambang batas yang harus ditetapkan. | Sistem secara otomatis menentukan ambang batas yang wajar berdasarkan algoritma cerdas. Tidak diperlukan nilai ambang batas manual. Peringatan langsung dipicu atau tugas diblokir segera setelah data anomali terdeteksi. Konfigurasikan Ambang Batas Oranye untuk menentukan rentang hasil anomali namun tidak kritis. |
Ambang Batas Dinamis Cerdas hanya tersedia untuk aturan berbasis pernyataan SQL kustom, rentang kustom, atau ambang batas dinamis.
Konfigurasi tingkat kepentingan
| Nilai | Dampak saat ambang batas merah dilampaui |
|---|---|
| Strong rules | Node penjadwalan terkait diblokir secara default, sehingga mencegah tugas downstream berjalan. |
| Weak rules | Node penjadwalan terkait tidak diblokir. Peringatan dikirim, tetapi tugas downstream tetap berjalan. |
Configure monitoring thresholds
-
Jika Comparison Method diatur ke Manual Settings:
-
Normal Threshold: Hasil pemeriksaan kualitas data memenuhi kondisi yang ditentukan, artinya output data sesuai harapan.
-
Red Threshold: Hasil pemeriksaan kualitas data memenuhi kondisi yang ditentukan, artinya output data tidak sesuai harapan.
-
Untuk hasil numerik, bandingkan dengan nilai tetap menggunakan: Lebih Besar Dari, Lebih Besar Dari atau Sama Dengan, Sama Dengan, Tidak Sama Dengan, Lebih Kecil Dari, atau Lebih Kecil Dari atau Sama Dengan.
-
Untuk pemeriksaan berbasis fluktuasi, gunakan Absolute Value, Raise, atau Drop sebagai metode perbandingan.
-
-
Jika Comparison Method diatur ke Intelligent Dynamic Threshold:
-
Orange Threshold: Hasil pemeriksaan kualitas data memenuhi kondisi yang ditentukan, artinya data anomali tetapi bisnis Anda tidak terpengaruh.
-
Status: Atur ke Enable agar aturan dapat berjalan di lingkungan produksi. Jika diatur ke Disable, aturan tidak dapat berjalan dalam mode uji atau dipicu oleh node penjadwalan.
Menonaktifkan aturan mencegahnya berjalan baik di lingkungan uji maupun produksi.
Klik Next untuk melanjutkan ke halaman Generate Monitoring Rule.
Langkah 3: Tambahkan tabel atau bidang
Berdasarkan jenis templat yang Anda pilih, tambahkan tabel atau bidang yang ingin diperiksa.
Tambahkan tabel (Templat Aturan Tingkat Tabel)
-
Klik Add Table. Pada halaman Batch Create, pilih tabel yang ingin ditambahkan.
Daftar menampilkan semua tabel yang sesuai dengan Data Source Type yang dikonfigurasi pada langkah sebelumnya. Filter berdasarkan Table Name jika diperlukan.
-
Klik Confirm untuk menambahkan tabel yang dipilih ke daftar Tables for Which You Want to Configure Rules.
Tambahkan bidang (Templat Aturan Tingkat Bidang)
-
Klik Add Fields. Di kotak dialog Select a field, pilih tabel yang berisi bidang target.
Area Tables to Be Selected mencantumkan tabel berdasarkan Data Source Type yang dikonfigurasi pada langkah sebelumnya.
-
Setelah memilih tabel, bagian Select Fields menampilkan semua bidang dalam tabel tersebut. Filter berdasarkan Field Name atau Field Description jika diperlukan.

-
Pilih bidang dan klik Create. Bidang tersebut muncul di daftar Fields for Which You Want to Configure Rules.
Langkah 4: Asosiasikan monitor kualitas
Monitor kualitas menentukan cakupan data (Rentang Data, seperti partisi tertentu) dan pengaturan pemicu untuk pemeriksaan kualitas. Asosiasikan setiap tabel atau bidang dengan monitor kualitas.
Konfigurasi batch
-
Pilih satu atau beberapa tabel atau bidang, lalu klik Configure Monitor.

-
Pilih salah satu tindakan batch berikut:
-
Automatically Associate: Mengasosiasikan tabel atau bidang yang dipilih dengan monitor kualitas yang sudah ada secara otomatis.
-
Disassociate: Menghapus asosiasi monitor kualitas untuk tabel atau bidang yang dipilih.
-
Batch Add: Membuat pengaturan monitor kualitas baru untuk tabel yang dipilih. Konfigurasikan hal berikut:
Item konfigurasi Deskripsi Data Range Partisi atau cakupan data yang akan diperiksa. Untuk tabel non-partisi, gunakan klausa WHERE untuk membatasi cakupan (atau biarkan kosong untuk memeriksa semua data). Untuk tabel terpartisi, gunakan format Partition key=Partition value. Nilai partisi dapat berupa konstanta atau built-in partition filter expression.Trigger Method Triggered by Node Scheduling in Production Environment: Pemeriksaan berjalan otomatis setelah node penjadwalan terkait selesai di Operation Center. Node dry-run tidak memicu pemeriksaan. Triggered Manually: Pemeriksaan hanya berjalan saat dipicu secara manual. Associated Scheduling Node Tersedia saat Trigger Method diatur ke Triggered By Node Scheduling In Production Environment. Pilih node penjadwalan yang akan diasosiasikan dengan monitor. Running Resources Resource komputasi yang digunakan untuk menjalankan aturan. Default ke sumber data tabel yang dipantau di ruang kerja saat ini. Jika Anda memilih sumber data berbeda, pastikan sumber tersebut dapat mengakses tabel yang dipantau.
PentingUntuk tabel non-MaxCompute dengan Triggered By Node Scheduling In Production Environment yang dipilih, jangan asosiasikan node penjadwalan yang berjalan pada shared resource group for scheduling. Melakukannya dapat menyebabkan error saat monitor dijalankan.
-
Konfigurasi per tabel
-
Di kolom Quality Monitoring di samping tabel atau bidang target, pilih monitor kualitas yang sudah ada atau klik New Quality Monitoring untuk membuatnya.

-
Jika belum ada monitor, klik Create Monitor dan konfigurasikan hal berikut:
Konfigurasi dasar
Parameter Deskripsi Monitor Name Nama monitor. Quality Monitoring Owner Pemilik monitor. Saat mengonfigurasi langganan peringatan, tentukan pemilik sebagai penerima menggunakan Email, Email and SMS, atau Telephone. Monitored Object Tabel yang akan diperiksa. Default ke tabel saat ini. Data Range Partisi atau cakupan data yang akan diperiksa. Untuk tabel non-partisi, semua data diperiksa secara default. Untuk tabel terpartisi, gunakan format Partition key=Partition value. Nilai partisi dapat berupa konstanta atau built-in partition filter expression. >CatatanUntuk aturan berbasis templat kustom atau pernyataan SQL kustom, Data Range tidak berpengaruh. Partisi ditentukan oleh pernyataan SQL dalam aturan.
Monitoring Rule Aturan pemantauan yang akan diasosiasikan dengan monitor ini. Jika belum ada aturan, lewati bidang ini dan tambahkan aturan setelah membuat monitor. Pengaturan eksekusi
Parameter Deskripsi Trigger Method Sama seperti konfigurasi batch. Associated Scheduling Node Sama seperti konfigurasi batch. Running Resources Sama seperti konfigurasi batch. Kebijakan penanganan
Parameter Deskripsi Quality Issue Handling Policies Blocks: Jika masalah kualitas data terdeteksi, node penjadwalan yang menghasilkan tabel diatur ke Gagal, sehingga memblokir node downstream. Default: Strong rules · Red anomaly. Alert: Mengirim notifikasi peringatan saat masalah terdeteksi. Default:Strong rules · Red anomaly,Strong rules · Orange exception,Strong rules · Check Failed,Weak rules · Red anomaly,Weak rules · Orange exception,Weak rules · Check Failed.Alert Method Configuration Saluran notifikasi: Email, Email and SMS, DingTalk Chatbot, DingTalk Chatbot @ALL, Lark Group Chatbot, Enterprise WeChat Robot, Custom Webhook, atau Telephone. Untuk chatbot DingTalk, Lark, atau WeChat, tambahkan bot dan salin URL webhook ke bidang Penerima. Custom Webhook hanya tersedia di DataWorks Edisi Perusahaan. Lihat Lampiran: Format pesan webhook untuk format pesannya. Saat menggunakan Email, Email and SMS, atau Telephone, atur penerima ke Data Quality Monitoring Owner (pemilik yang ditetapkan di Konfigurasi Dasar), Shift Schedule (orang yang bertugas dalam jadwal shift), atau Scheduling Task Owner (pemilik node penjadwalan terkait). -
Setelah membuat monitor, kembali ke halaman aturan pemantauan batch dan klik Refresh. Lalu pilih monitor yang baru saja Anda buat di kolom Quality Monitoring.

Langkah 5: Uji dan finalisasi
Klik Generate Monitoring Rule untuk membuka halaman Verify Monitoring Rule. Dari halaman ini:
-
Test Run: Pilih satu atau beberapa aturan dan klik Test Run. Di kotak dialog, pilih Data Timestamp (waktu pemicu simulasi). Sistem menghitung nilai partisi berdasarkan waktu yang ditentukan dan Data Range, lalu memeriksa apakah data memenuhi aturan yang dikonfigurasi. Setelah uji coba selesai, klik Running Records di kolom Actions untuk melihat hasilnya.

-
Subscriptions: Konfigurasikan penerima peringatan dan saluran notifikasi. Lihat opsi metode peringatan di Langkah 4.
-
Associated Scheduling: Hubungkan aturan ke node penjadwalan. Gunakan Use Recommended Running Mode agar sistem secara otomatis mengasosiasikan aturan dengan node yang direkomendasikan berdasarkan alur data, atau gunakan Manually Specify Running Mode untuk mengasosiasikan aturan dengan node tertentu secara manual.
PentingAturan harus diasosiasikan dengan node penjadwalan agar dapat dipicu secara otomatis.

-
View Rule Details: Klik View Rule Details di kolom Actions untuk membuka halaman detail aturan, tempat Anda dapat memodifikasi, memulai, menghentikan, atau menghapus aturan serta melihat log.
-
Delete: Hapus satu atau beberapa aturan yang dipilih.
Setelah uji coba berhasil dan penjadwalan diasosiasikan, klik Complete Check.
Langkah selanjutnya
Setelah monitor dijalankan, pilih Quality O&M di panel navigasi kiri dan klik Monitor > Running Records untuk melihat status pemeriksaan kualitas dan riwayat pemeriksaan aturan lengkap untuk tabel yang dipantau.
Lampiran: Format pesan webhook
Bagian ini menjelaskan format pesan dan parameter untuk notifikasi peringatan yang dikirim menggunakan Custom Webhook.
Contoh pesan
{
"detailUrl": "https://dqc-cn-zhangjiakou.data.aliyun.com/?defaultProjectId=3058#/jobDetail?envType=ODPS&projectName=yongxunQA_zhangbei_standard&tableName=sx_up_001&entityId=10878&taskId=16876941111958fa4ce0e0b5746379cd9bc67999d05f8&bizDate=1687536000000&executeTime=1687694111000",
"datasourceName": "emr_test_01",
"engineTypeName": "EMR",
"projectName": "Project name",
"dqcEntityQuality": {
"entityName": "tb_auto_test",
"actualExpression": "ds=20230625",
"strongRuleAlarmNum": 1,
"weakRuleAlarmNum": 0
},
"ruleChecks": [
{
"blockType": 0,
"warningThreshold": 0.1,
"property": "id",
"tableName": "tb_auto_test",
"comment": "Test a monitoring rule",
"checkResultStatus": 2,
"templateName": "Compare the Number of Unique Field Values Against Expectation",
"checkerName": "fulx",
"ruleId": 123421,
"fixedCheck": false,
"op": "",
"upperValue": 22200,
"actualExpression": "ds=20230625",
"externalId": "123112232",
"timeCost": "10",
"trend": "up",
"externalType": "CWF2",
"bizDate": 1600704000000,
"checkResult": 2,
"matchExpression": "ds=$[yyyymmdd]",
"checkerType": 0,
"projectName": "auto_test",
"beginTime": 1600704000000,
"dateType": "YMD",
"criticalThreshold": "0.6",
"isPrediction": false,
"ruleName": "Rule name",
"checkerId": 7,
"discreteCheck": true,
"endTime": 1600704000000,
"MethodName": "max",
"lowerValue": 2344,
"entityId": 12142421,
"whereCondition": "type!='type2'",
"expectValue": 90,
"templateId": 5,
"taskId": "16008552981681a0d6",
"id": 234241453,
"open": true,
"referenceValue": [
{
"discreteProperty": "type1",
"value": 20,
"bizDate": "1600704000000",
"singleCheckResult": 2,
"threshold": 0.2
}
],
"sampleValue": [
{
"discreteProperty": "type2",
"bizDate": "1600704000000",
"value": 23
}
]
}
]
}
Deskripsi parameter
| Parameter | Tipe | Contoh | Deskripsi |
|---|---|---|---|
ProjectName |
String | autotest |
Nama instans mesin komputasi atau sumber data yang dipantau. |
actualExpression |
String | ds=20200925 |
Partisi dalam tabel sumber data yang dipantau. |
RuleChecks |
Array | — | Daftar hasil validasi. |
BlockType |
Integer | 1 |
Kekuatan aturan. 1 = Strong rule. 0 = Weak rule. Aturan kuat memblokir tugas penjadwalan saat ambang batas kritis dilampaui. |
WarningThreshold |
Float | 0.1 |
Ambang batas peringatan. Menunjukkan penyimpangan yang diizinkan dari nilai yang diharapkan. |
Property |
String | type |
Kolom dalam tabel sumber data yang diperiksa oleh aturan. |
TableName |
String | dual |
Nama tabel yang divalidasi. |
Comment |
String | — | Deskripsi aturan validasi. |
CheckResultStatus |
Integer | 2 |
Status hasil pemeriksaan. |
TemplateName |
String | Compare number of unique field values against expectation |
Nama templat validasi. |
CheckerName |
String | fulx |
Nama pemeriksa. |
RuleId |
Long | 123421 |
ID aturan. |
FixedCheck |
Boolean | false |
Apakah nilai tetap digunakan untuk pemeriksaan. true: nilai tetap. false: tanpa nilai tetap. |
Op |
String | > |
Operator perbandingan. |
UpperValue |
Float | 22200 |
Batas atas prediksi, dihasilkan otomatis berdasarkan ambang batas yang dikonfigurasi. |
ActualExpression |
String | ds=20200925 |
Partisi aktual dalam tabel sumber data yang diperiksa. |
ExternalId |
String | 123112232 |
ID node untuk tugas terjadwal. |
TimeCost |
String | 10 |
Durasi tugas verifikasi. |
Trend |
String | up |
Tren hasil pemantauan. |
ExternalType |
String | CWF2 |
Jenis sistem pemetaan CDN. Hanya CWF yang didukung. |
BizDate |
Long | 1600704000000 |
Waktu data. Untuk data offline, biasanya satu hari sebelum pemeriksaan dijalankan. |
CheckResult |
Integer | 2 |
Hasil verifikasi. |
MatchExpression |
String | ds=$[yyyymmdd] |
Ekspresi filter partisi. |
CheckerType |
Integer | 0 |
Jenis pemeriksa. |
ProjectName |
String | autotest |
Nama mesin komputasi atau sumber data untuk pemeriksaan kualitas data. |
BeginTime |
Long | 1600704000000 |
Waktu mulai operasi verifikasi. |
DateType |
String | YMD |
Jenis siklus penjadwalan. YMD menunjukkan tugas tahunan, bulanan, dan harian. |
CriticalThreshold |
Float | 0.6 |
Ambang batas kritis. Menunjukkan tingkat penyimpangan dari nilai yang diharapkan. Jika aturan kuat melebihi ambang batas ini, tugas penjadwalan diblokir. |
IsPrediction |
Boolean | false |
Apakah hasilnya merupakan prediksi. true: prediksi. false: bukan prediksi. |
RuleName |
String | — | Nama aturan. |
CheckerId |
Integer | 7 |
ID pemeriksa. |
DiscreteCheck |
Boolean | true |
Apakah validasi diskrit diaktifkan. true: diskrit. false: non-diskrit. |
EndTime |
Long | 1600704000000 |
Waktu akhir kueri hasil verifikasi. |
MethodName |
String | max |
Metode yang digunakan untuk mengumpulkan data sampel. Nilai yang didukung: avg, count, sum, min, max, count_distinct, user_defined, table_count, table_size, table_dt_load_count, table_dt_refuseload_count, null_value, null_value/table_count, (table_count-count_distinct)/table_count, table_count-count_distinct. |
LowerValue |
Float | 2344 |
Batas bawah prediksi, dihasilkan otomatis berdasarkan ambang batas yang dikonfigurasi. |
EntityId |
Long | 14534343 |
ID ekspresi filter partisi. |
WhereCondition |
String | type!='type2' |
Kondisi filter untuk tugas validasi. |
ExpectValue |
Float | 90 |
Nilai yang diharapkan. |
TemplateId |
Integer | 5 |
ID templat validasi. |
TaskId |
String | 16008552981681a0d6**** |
ID tugas verifikasi. |
Id |
Long | 2231123 |
ID kunci primer. |
ReferenceValue |
Array | — | Nilai sampel historis. |
DiscreteProperty |
String | type1 |
Nilai bidang sampel yang dikelompokkan berdasarkan GROUP BY. Misalnya, pengelompokan berdasarkan Jenis Kelamin menghasilkan Male, Female, dan null. |
Value |
Float | 20 |
Nilai sampel. |
BizDate |
String | 1600704000000 |
Waktu data. Untuk data offline, biasanya satu hari sebelum pemeriksaan dijalankan. |
SingleCheckResult |
Integer | 2 |
Hasil verifikasi untuk pemeriksaan tunggal. |
Threshold |
Float | 0.2 |
Nilai ambang batas. |
SampleValue |
Array | — | Nilai sampel saat ini. |
Open |
Boolean | true |
Apakah aturan diaktifkan. |