這很重要
這項功能位於 測試版 (Beta) 中。 工作區管理員可以從 「預覽 」頁面控制對此功能的存取。 請參閱 管理 Azure Databricks 預覽。
本頁概述資料品質監視結果系統資料表架構,並包含範例查詢。 此資料表會儲存新鮮度和完整性檢查的結果,以及下游影響和根本原因分析,涵蓋中繼存放區中啟用資料品質監控的所有資料表。
表格路徑: system.data_quality_monitoring.table_results
只有帳戶管理員可以存取此表格,而且他們必須視需要將存取權授與其他人。 系統表格使用 預設儲存體。 由於它包含範例值和下游使用資料,因此在授與其他人存取權時請小心。
資料品質監視結果資料表結構描述
表格 system.data_quality_monitoring.table_results 使用下列架構:
| 欄位名稱 | 內容 (適用於 struct 資料類型) |
數據類型 | Description | 範例資料 |
|---|---|---|---|---|
event_time |
時間戳記 | 產生資料列的時間。 | 2025-06-27T12:00:00 |
|
catalog_name |
字串 | 目錄的名稱。 用來識別表格。 | main |
|
schema_name |
字串 | 架構的名稱。 用來識別表格。 | default |
|
table_name |
字串 | 數據表的名稱。 用來識別表格。 | events |
|
catalog_id |
字串 | 目錄的穩定ID。 | 3f1a7d6e-9c59-4b76-8c32-8d4c74e289fe |
|
schema_id |
字串 | 結構描述的穩定ID。 | 3f1a7d6e-9c59-4b76-8c32-8d4c74e289fe |
|
table_id |
字串 | 資料表的穩定 ID。 | 3f1a7d6e-9c59-4b76-8c32-8d4c74e289fe |
|
status |
字串 | 資料表層級的合併健康狀態。 如果任何檢查或群組狀況不良,則為「狀況不良」。 |
Healthy、Unhealthy、Unknown |
|
freshness |
結構 | 新鮮度檢查。 | ||
status |
字串 | 整體新鮮度狀態。 | Unhealthy |
|
commit_freshness |
結構體 | 提交新鮮度檢查結果。 | ||
completeness |
結構 | 完整性檢查結果。 | ||
status |
字串 | 完整性檢查的狀態。 | Unhealthy |
|
total_row_count |
結構體 | 一段時間內表格中的列總數。 | ||
daily_row_count |
結構體 | 每天新增的列數。 | ||
downstream_impact |
結構 | 根據相依性圖表的下游影響摘要。 | ||
impact_level |
整數 (int) | 嚴重性指標(0 = 無,1 = 低,2 = 中,3 = 高,4 = 非常高)。 | 2 | |
num_downstream_tables |
整數 (int) | 受影響的下游資料表數目。 | 5 | |
num_queries_on_affected_tables |
整數 (int) | 過去 30 天內在受影響的下游資料表上執行的查詢數。 | 120 | |
root_cause_analysis |
結構 | 有關導致問題的上游作業的資訊。 | ||
upstream_jobs |
array | 每個上游任務的中繼資料。 |
commit_freshness 陣列結構
commit_freshness 結構包含下列項目:
| 項目名稱 | 數據類型 | Description | 範例資料 |
|---|---|---|---|
status |
字串 | 認可新鮮度檢查的狀態。 | Unhealthy |
error_code |
字串 | 檢查期間遇到錯誤訊息。 | FAILED_TO_FIT_MODEL |
last_value |
時間戳記 | 上次提交時間戳記。 | 2025-06-27T11:30:00 |
predicted_value |
時間戳記 | 表格應更新的預測時間。 | 2025-06-27T11:45:00 |
total_row_count 和 daily_row_count 陣列結構
和total_row_countdaily_row_count結構包含下列內容:
| 項目名稱 | 數據類型 | Description | 範例資料 |
|---|---|---|---|
status |
字串 | 檢查狀態。 | Unhealthy |
error_code |
字串 | 檢查期間遇到錯誤訊息。 | FAILED_TO_FIT_MODEL |
last_value |
整數 (int) | 過去 24 小時內觀察到的資料列數。 | 500 |
min_predicted_value |
整數 (int) | 過去 24 小時內的最小預期列數。 | 10 |
max_predicted_value |
整數 (int) | 過去 24 小時內的預期列數上限。 | 1000 |
upstream_jobs 陣列結構
直欄中 upstream_jobs 顯示的陣列結構如下表所示:
| 項目名稱 | 數據類型 | Description | 範例資料 |
|---|---|---|---|
job_id |
字串 | 工作 ID。 | 12345 |
workspace_id |
字串 | 工作區 ID。 | 6051921418418893 |
job_name |
字串 | 工作顯示名稱。 | daily_refresh |
last_run_status |
字串 | 最近執行的狀態。 | SUCCESS |
run_page_url |
字串 | Databricks 作業執行頁面的 URL。 | https://.../runs/123 |
下游影響資訊
在記錄的結果資料表中,欄位 downstream_impact 是一個 struct ,具有下列欄位:
| 领域 | 類型 | Description |
|---|---|---|
impact_level |
整數 (int) | 介於 1 到 4 之間的整數值,表示數據質量問題的嚴重性。 較高的值表示中斷程度較高。 |
num_downstream_tables |
整數 (int) | 可能受識別問題的下游數據表數目。 |
num_queries_on_affected_tables |
整數 (int) | 過去 30 天內參考受影響和下游數據表的查詢總數。 |
範例查詢
在執行之前,請將參數值替換為您自己的。
取得 schema 中的所有目前事件
WITH latest_rows AS (
SELECT
*,
ROW_NUMBER() OVER (
PARTITION BY table_id
ORDER BY event_time DESC
) AS rn
FROM
system.data_quality_monitoring.table_results
WHERE
catalog_name = "c"
AND schema_name = "s"
)
SELECT *
FROM latest_rows
WHERE
rn = 1
AND status = "Unhealthy"
取得在資料結構中對下游有重大影響的所有事故資料表
WITH latest_rows AS (
SELECT
*,
ROW_NUMBER() OVER (
PARTITION BY table_id
ORDER BY event_time DESC
) AS rn
FROM
system.data_quality_monitoring.table_results
WHERE
catalog_name = "c"
AND schema_name = "s"
)
SELECT *
FROM latest_rows
WHERE rn = 1
AND downstream_impact.impact_level >= 3
取得資料庫架構中目前受數據新鮮度問題影響的所有資料表
WITH latest_rows AS (
SELECT
*,
ROW_NUMBER() OVER (
PARTITION BY table_id
ORDER BY event_time DESC
) AS rn
FROM
system.data_quality_monitoring.table_results
WHERE
catalog_name = "c"
AND schema_name = "s"
)
SELECT *
FROM latest_rows
WHERE rn = 1
AND freshness.status = "Unhealthy"
取得資料表的所有歷程記錄
SELECT *
FROM system.data_quality_monitoring.table_results
WHERE
catalog_name = "c"
AND schema_name = "s"
AND table_name = "t"