博客 / 詳情

返回

超越血緣展示:如何用算子級血緣實現數據管理的主動防控與高效協同?

01 什麼是算子級血緣?

數據血緣如“家族圖譜”一樣,描繪了數據的起源、流經路徑及其轉換過程的詳盡記錄,可以精確追溯數據的初始來源,明晰其歷經的各類處理流程,以及最終的應用方式,從而幫助企業分析並監控數據在業務鏈條中的上下游依賴關係,為企業提升數據管理效率和質量提供“洞察能力”。

通常我們提到的數據血緣包括表級血緣和字段級血緣,它們更多描述的是表和字段之間的“依賴關係”,在實際落地場景裏存在明顯侷限性:如看不清字段影響、看不清加工邏輯、無法保證解析準確度等。而算子級血緣能夠深入到口徑解析層面,精準捕捉到數據流轉加工處理過程中的每一個細節,可以幫助企業做到精細化分析和理解。

“算子級血緣”解析技術參考數據庫引擎 SQL 解析技術,對 SQL 代碼構建 AST(虛擬語法樹)和算子關係,來實現精準推斷血緣關係和改寫代碼的能力。Aloudata BIG 提供的解析器,類似於一個數據庫或者平台的 SQL 引擎模擬器,要實現 99% 以上的解析準確率,就要全面支持解析指定平台的 SQL 語法,並能抽象出產品級解決方案,使得解析錯誤能夠快速被識別和修正。

“算子級血緣”可以清晰地展現字段上下游的列加工關係和行影響關係。Aloudata BIG 將血緣關係細化成“直接血緣”和“間接血緣”:

直接血緣是指:SQL 內 SELECT 算子包含的字段加工邏輯,代表對於插入字段內容的直接加工邏輯和關聯關係;
間接血緣是指:SQL 內例如 WHERE、JOIN、HAVING 等其他算子包含的字段加工邏輯,代表對於插入表的記錄行影響,會使得表數據裁剪或者膨脹。

精準區分血緣關係會讓我們的溯源和影響面分析能力更適應質量保障等場景要求。例如,當上遊表的加工代碼修改了關聯碼錶或者過濾條件時,會直接影響下游數據計算內容。通過“算子級血緣”技術,系統能夠智能地分析 SQL 代碼的 JOIN 和 WHERE 條件,準確判斷哪些下游表會受到行數變化影響。

企業可以將業務生產系統、數據處理系統和應用系統的所有數據資產連接到一張高精準的算子級血緣圖譜上。該圖譜上游連接各種業務數據源,中間可以精準刻畫數據加工鏈路,下游的應用系統血緣也可以通過標準化接口導入圖譜,將各類自定義資產無縫連接到血緣圖譜中,構建一個端到端連通、全鏈路覆蓋的血緣圖譜體系

憑藉算子級血緣的全面連通性和精細化鏈路分析能力,企業可以打通數據生產、加工到消費的完整鏈路,對上游發生的數據變動、質量報錯等異常情況,可實現快速、精準的數據質量問題溯源分析,高效識別源頭數據質量問題;輔助上游系統進行監管報送、數據統計類應用業務影響分析,更好地理解和監控數據在業務鏈條中的流動和變化,提高數據管理的效率和準確性。

算子級血緣來源於對 SQL 代碼的解析,也支持 SQL 代碼改寫和精細化分析技術,例如可以利用血緣關係,逐層回溯字段加工邏輯並等價改寫字段口徑,實現“壓縮多層代碼”,得到以指定來源表字段表達的“歸一化”後的“溯源字段口徑”。這樣就可以自動完成字段口徑的溯源盤點。擴展開來,將不同的表字段全部溯源到 ODS 層,以 ODS 表字段來表達目標表的加工邏輯,那麼就可以實現對不同表的“重複或相似”的量化評估。這種技術可以用於監管報送指標“一鍵溯源”到數倉加工鏈路源端,並落實對上游系統質量保障和標準貫徹的要求

Aloudata BIG “算子級血緣”所需採集的“源材料”包括三類:數據表或者視圖的 DDL 語句、ETL 任務原始腳本或者任務執行日誌文件、參數變量信息。如果無法採集到全量的 ETL 任務原始腳本,可以考慮採集全量、完整的數據引擎執行日誌來進行補充。日誌文件中需要包含臨時表創建 DDL 和全量 DML 執行語句。整個解析構建由產品化自動完成,未來的血緣質量運維也可以藉助產品上對解析錯誤的自動歸因,針對性的開展元數據治理,長期保持達到 99% 以上血緣準確率。

02 之前已經建立過血緣,也制定了管理機制,為什麼還要升級血緣?

算子級血緣和之前的表級血緣、字段級血緣使用的技術基礎不一樣,從而導致兩者的應用空間也差異非常大。

表級血緣和字段級血緣重點提取的是關係,這種關係是一種粗粒度的依賴關係。一般用於在調度系統或者資產平台上進行展示,讓用户知道一張表或者字段的上下游是誰,如果需要了解為什麼有關係就需要用户自己看代碼分析。利用表級血緣來分析很容易泛化,一張表的下游擴散到上萬張表是很常見的情況。字段級血緣因為缺乏具體的關聯邏輯,很難去檢查血緣關係是不是正確,準確性和可信度不足。

“算子級血緣”解析技術是參考數據庫引擎 SQL 解析技術,對 SQL 代碼構建 AST(虛擬語法樹)和算子關係,來精準推斷血緣關係和理解代碼邏輯。可以將算子級血緣解析技術想象為數據庫的 SQL 執行模擬器。最直觀的特徵是,它可以提取出不同範圍內字段的加工口徑。類似於數據專家在分析數據鏈路的時候,建立了對數據加工邏輯的理解。

但是,光是解析出更精細化的關係和字段口徑,還是一種技術層面的先進性。升級到算子級血緣,其實是為了使用主動元數據來升級企業的數據管理措施

主動元數據是基於算子級血緣基礎開發的精細化血緣分析和代碼改寫技術。相比於傳統的元數據技術,主動元數據可以將所有的數據資產統一連接在一張知識圖譜上,提供精準的數據關係理解能力,持續為業務場景分析元數據和其變化影響,像 7 x 24 小時在線的數據專家一樣,為更廣泛的數據管理場景提供智能化和自動化的解決方案。

主動元數據可以在統一的知識圖譜上,將算子級血緣、自定義血緣、技術血緣全部融合在一起。使用圖譜的精細化分析能力,對端到端的變更影響、溯源、鏈路優化、數據理解和信任提供自動化方案,解決數據管理深水區中的“看不清、管不住、改不動”問題。它可以幫助企業以更少的人力投入、更快的成效來構建起數據管理的長效機制

03 運維應急場景中,使用調度依賴關係重跑下游已經足夠了,算子級血緣可以帶來什麼增益?

應急角度:我們建議首先還是要通過調度依賴關係去重跑所有下游,這是保障數據質量的必要條件。但是調度依賴關係有可能存在着錯漏,我們可以利用算子級血緣從兩方面來優化運維應急的效果:

減少打擾,重點排查:針對上游數據質量異常的字段,利用算子級血緣的精細化分析能力,精準地拉取字段影響範圍。如果算子級血緣還具備解決血緣泛化的行級裁剪能力,就可以針對碼值變更或者數據變更等類型,獲取更精細化的下游範圍。相比任務依賴關係拉取的範圍,這些根據字段加工關係拉取的受影響的下游範圍已經大大減少,我們可以要求這些資產的負責人在任務重跑後做數據質量的重點檢查;
增加檢查,避免缺失:調度配置的依賴關係有可能與數據的使用關係之間不匹配,這時用調度依賴關係去重跑下游,有可能會漏掉真實存在的數據影響。例如下游使用了一份靜態數據或者使用了一張表的最新數據,這導致上下游沒有建立調度依賴,但存在數據上的影響。算子級血緣的表級或者字段級關係是從數據使用邏輯上分析出來的,它可以作為調度依賴關係的補充分析,防止在數據修復時,漏掉那些數據上有使用但調度上缺失依賴的情況。

更好的措施,我們認為是從事後應急轉向事前預防。算子級血緣可以幫助大家在事前變更協同方面獲得更精準的血緣分析結果,讓真正受影響的下游用户提前參與變更評估。在事中階段,在開發態腳本提交時,可以根據代碼的實時解析結果,評估開發態代碼上線後對生產鏈路下游的影響,以及是否會影響重點鏈路,從而可以提前通知下游,實現差異化的保障或者測試。

算子級血緣的分析結果,可以幫助我們更快找到真正有影響的下游對象,讓變更協同、開發態評估工作更好地落地推廣,避免影響泛化導致的無效打擾或者溝通摩擦成本。

04 如何評估各家血緣技術的優劣?

評價算子級血緣的技術優劣,可以從三個指標來看:

● 第一個指標是字段口徑的正確性。特別是針對複雜 SQL 中的多層嵌套、任務中含有臨時表、CASE WHEN 的處理、CTE 寫法的處理;
● 第二個指標是字段口徑的完整性。Aloudata BIG 可以支持從任務內合併多層 SQL 後提取字段的加工口徑摘要,也可以自動切分出任務內每段 SQL 中相關字段的完整加工口徑。完整的加工口徑是指一段“可執行”的 SQL 語句,模擬出字段加工的取值、來源表、過濾條件、關聯條件和聚合條件等信息;
● 第三個指標是影響分析和溯源分析報告中拉取的血緣關係的正確性

能夠從加工邏輯層面完整、正確地還原某個字段的口徑,是算子級血緣的顯著技術特徵,鏈路上的血緣關係和影響關係都是從加工口徑裏面提取出來的。這種加工邏輯的可觀測性,與人工對代碼閲讀的理解結合起來,能夠幫助用户快速判斷血緣解析是否正確。否則,要對血緣解析結果“證偽”,就需要人工分析字段與字段的“完整”關係,才能得出一份代碼的字段級血緣是否正確,效率很低。從 Aloudata BIG 解析器的設計理念來看,如果一個字段的口徑提取錯誤,那代表代碼批量解析的錯誤,很容易能看出血緣解析的準確性。

從字段口徑的正確性來看,需要評估各廠商技術上能不能支持在採集、解析、入庫各個環節的可觀測性能力。血緣質量的可觀測性能力是指如下能力:

● 報錯的檢測和拋出機制
● 日誌的覆蓋度
● 錯誤的歸因
● 量化統計能力,例如對成功率的口徑的定義

血緣質量的可觀測性越完備,量化評估血緣解析成功率的可信度就越高。

字段口徑的完整性也是很重要的評估指標。如果僅僅提取口徑函數或者加工片段,或者無法實現針對單字段口徑多層 SQL 的簡化,就會加大血緣產品在日常使用過程中人工校驗和理解的難度,也就更難發現血緣解析的錯誤。當具備完整提取口徑的能力以後,又能夠經過多個客户生產環境和使用案例的驗證,則可以輔助證明血緣結果的可信度。

所以我們評估各家廠商反饋的血緣解析成功率或者準確率真偽的時候,需要同時考察各家廠商對於字段口徑的提取能力和問題觀測能力。對錯誤的可觀測性考慮越完整、人工可以驗證的內容(錯誤歸因、口徑代碼、分析報告)越完整,並且技術和產品已經具備複雜生產環境落地案例,那血緣解析結果的可信度就越高,才能具備血緣準確率“自證”和“他證”的落地可行性。同時,在投產後,日常維護血緣質量的可持續性才能越強。

05 業務人員會如何受益?

算子級血緣因為其底層技術性更多被 IT 人員使用。主動元數據是基於算子級血緣基礎開發的精細化血緣分析和代碼改寫技術。利用主動元數據技術,可以幫助更廣泛的數據用户從中受益:

一、建設企業數據知識中心。

通過對元元模型的優化和擴展,實現了更豐富的屬性內容存儲和屬性變化的追溯能力,加強知識圖譜的信息存儲和表達能力。這些信息構成了上層應用的數據輸入,特別是在大模型應用中,可以為 AI 提供更多的數據標註。

二、擴展自動化監控解決方案。

將主動元數據技術應用到解決數據的質量保障和風險可觀測性領域,業務人員也會受益於對數據質量的管控結果。通過對風險資產的自動化標註,讓業務人員可以分辨有風險的資產,或者增強數據推薦的智能化能力,讓“好資產浮上來、壞資產沉下去”。

三、智能化持續創新。

結合大模型技術和主動元數據產品解決方案,賦能業務人員“找對數、用對數、會用數”。

  • 找對數:底層知識圖譜豐富的實體、關係和屬性信息,可以讓大模型為用户推薦更符合使用場景和用户特徵的數據資產;
  • 用對數:對風險評估的結果可以幫助用户篩選和避免使用有問題的資產;
  • 會用數:對字段口徑語義提取、數據常用用法的提取、相似資產識別的結果,可以讓用户快速完成對數據加工邏輯的理解,並能關聯分析和查詢相關數據,減少數據諮詢和數據信任的成本。

如有更多問題,歡迎訪問 Aloudata 官網諮詢,我們將為您一一解答。

user avatar u_16120231 頭像 jenemy 頭像 FlyAway2013 頭像 u_15641375 頭像
4 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.