awslabs/deequ
Deequ is a library built on top of Apache Spark for defining "unit tests for data", which measure data quality in large datasets.
解決的問題
Deequ 提供了一種對大型資料集進行「單元測試」的方法,可及早發現錯誤,防止損壞或錯誤的資料傳遞至消費系統或機器學習演算法。它允許開發人員明確陳述其資料的假設(例如,特定欄位中無空值),並在大規模資料上進行驗證。
工作原理
基於 Apache Spark 建構,Deequ 可處理表格資料(CSV、資料庫表格、日誌等),並將定義的限制轉換為一系列 Spark 作業以計算指標。可透過 Scala/Java API 或一種稱為 DQDL(資料品質定義語言)的宣告式語言來定義完整性、唯一性、範圍檢查等規則。同時支援行級評估,以精確識別哪些記錄違反特定規則。
適用對象
在分散式檔案系統或資料倉儲中處理極大資料集(數十億列)的資料工程師與機器學習實務者,需確保資料品質與一致性。
主要特色
- 可擴展的驗證:利用 Apache Spark 設計用於處理數十億列資料。
- 宣告式規則:支援 DQDL,讓規則定義易讀且簡單。
- 程式碼化限制:提供彈性 API,可定義複雜檢查,如分位數、URL 模式與大小限制。
- 進階分析:包含資料剖析、時間序列上的指標異常偵測,以及自動建議限制功能。
- 行級追蹤:可識別出具體哪些資料列未通過品質檢查。
相關
- 專案
- 專案
- 專案
- 專案
- 專案