共用方式為


Databricks Lakehouse 監視簡介

本文說明 Databricks Lakehouse 監視。 其涵蓋監視數據的優點,並提供 Databricks Lakehouse 監視元件和使用方式的概觀。

Databricks Lakehouse 監視可讓您監視帳戶中所有數據表中數據的統計屬性和品質。 您也可以透過監視包含模型輸入和預測的推斷數據表,來追蹤機器學習模型和模型服務端點的效能。 此圖顯示透過 Databricks 中的數據和 ML 管線的數據流,以及如何使用監視來持續追蹤資料品質和模型效能。

Databricks Lakehouse 監視概觀

為什麼要使用 Databricks Lakehouse 監視?

若要從數據中繪製有用的深入解析,您必須對數據的品質有信心。 監視您的數據提供量化量值,可協助您追蹤和確認一段時間內數據的品質和一致性。 當您偵測數據表數據分佈或對應模型效能的變更時,Databricks Lakehouse 監視所建立的數據表可以擷取並警示變更,並協助您找出原因。

Databricks Lakehouse 監視可協助您回答如下的問題:

  • 數據完整性看起來是什麼樣子,以及隨著時間而變更的方式? 例如,目前數據中 Null 或零值的分數為何,而且它是否已增加?
  • 數據的統計分佈看起來是什麼樣子,以及隨著時間的變化? 例如,數值數據行的第90個百分位數為何? 或者,類別數據行中的值分佈為何,以及它與昨天有何不同?
  • 目前數據與已知基準之間,或數據連續時間範圍之間是否有漂移?
  • 數據子集或配量的統計分佈或漂移是什麼樣貌?
  • ML 模型輸入和預測如何隨著時間變化?
  • 模型效能趨勢如何隨著時間推移? 模型版本 A 的執行效能是否優於 B 版?

此外,Databricks Lakehouse 監視可讓您控制觀察的時間粒度,並設定自定義計量。

需求

以下是使用 Databricks Lakehouse 監視的必要專案:

  • 您的工作區必須針對 Unity 目錄啟用,而且您必須能夠存取 Databricks SQL。
  • 只有差異數據表支援監視,而且數據表必須是下列其中一種數據表類型:Managed 數據表、外部數據表、檢視表、具體化檢視表或串流數據表。
  • 透過具體化檢視和串流數據表建立的監視器不支援累加處理。
  • 並非所有區域都受到支援。 如需區域支援,請參閱數據表功能中具有有限區域可用性的筆記本和工作流程無伺服器計算數據行

注意

Databricks Lakehouse 監視會針對作業使用無伺服器計算。 如需追蹤 Lakehouse 監視費用的詳細資訊,請參閱 檢視 Lakehouse 監視費用

Lakehouse 監視如何在 Databricks 上運作

若要監視 Databricks 中的數據表,您可以建立附加至數據表的監視器。 若要監視機器學習模型的效能,您可以將監視器附加至保存模型輸入和對應預測的推斷數據表。

Databricks Lakehouse 監視提供下列類型的分析:時間序列、快照集和推斷。

設定檔類型 描述
時間序列 用於包含以時間戳數據行為基礎的時間序列數據集的數據表。 監視會跨時間序列的時間範圍計算數據品質計量。
推斷 用於包含模型要求記錄的數據表。 每個數據列都是一個要求,其中包含時間戳的數據行、模型輸入、對應的預測,以及 (選擇性) 的地真標籤。 監視會比較要求記錄的時間型時段的模型效能和數據品質計量。
快照式 用於所有其他數據表類型。 監視會計算數據表中所有數據的數據品質計量。 完整數據表會在每次重新整理時處理。

本節簡短說明 Databricks Lakehouse Monitoring 所使用的輸入數據表及其產生的計量數據表。 此圖表顯示輸入數據表、計量數據表、監視器和儀錶板之間的關聯性。

Databricks Lakehouse 監視圖表

主數據表和基準數據表

除了要監視的數據表,稱為「主要數據表」之外,您也可以選擇性地指定基準數據表做為測量漂移的參考,或一段時間的值變更。 當您有預期數據外觀的範例時,基準數據表會很有用。 其概念是,漂移接著會相對於預期的數據值和分佈來計算。

基準數據表應該包含數據集,以統計分佈、個別數據行分佈、遺漏值和其他特性來反映輸入數據的預期品質。 它應該符合受監視數據表的架構。 例外狀況是用於時間序列或推斷配置檔之數據表的時間戳數據行。 如果主數據表或基準數據表中遺漏數據行,監視會使用最佳啟發學習法來計算輸出計量。

對於使用快照集配置檔的監視器,基準數據表應該包含數據快照集,其中散發代表可接受的質量標準。 例如,在成績分佈數據上,可能會將基準設定為上一個平均分配成績的類別。

對於使用時間序列配置檔的監視器,基準數據表應該包含代表時間範圍的數據,其中數據分佈代表可接受的質量標準。 例如,在天氣數據上,您可以將基準設定為接近預期正常溫度的一周、月或年。

對於使用推斷配置檔的監視器,基準的最好選擇是用來定型或驗證所監視模型的數據。 如此一來,當數據相對於模型經過定型和驗證時,使用者就可以發出警示。 此數據表應該包含與主數據表相同的功能數據行,此外也應該有針對主數據表的 InferenceLog 所指定的相同 model_id_col 功能數據行,以便一致地匯總數據。 在理想情況下,應該使用用來評估模型的測試或驗證集,以確保可比較的模型品質計量。

計量數據表和儀錶板

數據表監視器會建立兩個計量數據表和儀錶板。 計量值是針對整個數據表計算,以及您在建立監視器時指定的時間範圍和數據子集(或「配量」。 此外,針對推斷分析,系統會針對每個模型標識元計算計量。 如需計量數據表的詳細資訊,請參閱 監視計量數據表

計量數據表是 Delta 資料表,並儲存在您指定的 Unity 目錄架構中。 您可以使用 Databricks UI 來檢視這些數據表、使用 Databricks SQL 查詢這些數據表,並根據它們建立儀錶板和警示。

針對每個監視器,Databricks 會自動建立儀錶板,以協助您可視化並呈現監視器結果。 儀錶板完全可像任何其他 舊版儀錶板一樣自定義。

開始使用 Databricks 上的 Lakehouse 監視

請參閱下列文章以開始使用: