資料歷程可讓您追蹤資料在系統中的移動方式,包括資料來源、傳遞至何處,以及套用的轉換。
為什麼需要資料沿襲?
處理大型資料集時,通常需要將資料轉換為適合特定專案需求的實體,例如文字檔、表格、報表、資訊主頁和模型。
舉例來說,假設您有一家網路商店,並在單一 SQL 資料表中記錄每筆交易。為了方便分析師處理資料,您開始執行工作,從這個單一資料表擷取資訊,並依區域、品牌或售價產生較小的資料表。接著,分析師也會開始執行相同作業:進一步轉換資料,並將這些較小的資料表與其他資料來源合併,產生更多資料表。
這可能會對利害關係人造成重大挑戰:
- 資料消費者無法使用自助式工具,瞭解資料是否來自權威來源。
- 資料工程師無法追蹤所有資料轉換作業,因此無法找出問題的根本原因。
- 資料工程師和分析師無法在修改或刪除表格前,充分評估可能造成的影響。
- 資料管理員無法瞭解整個機構的機密資料使用方式,也無法驗證是否符合法規要求。
資料沿襲解決方案提供實用的方法,可執行下列操作:
- 透過歷程圖瞭解資料的來源和轉換方式。
- 追蹤與項目和資料作業相關的錯誤,找出根本原因。
- 透過影響分析改善變更管理:避免停機或發生非預期錯誤、瞭解相依項目,並與相關利害關係人協作。
資料歷程資訊模型
從基本形式來看,歷程記錄是資料從「來源」轉換為「目標」的記錄。Data Lineage API 會收集這項資訊,並使用程序、執行和事件的概念,將資訊整理成階層式資料模型。
程序
程序是指特定系統支援的資料轉換作業定義。在 BigQuery 沿襲的脈絡中,process
是支援的工作類型之一。
執行
執行作業就是執行程序。程序可以多次執行。
執行作業包含開始和結束時間、狀態或其他屬性等詳細資料。
詳情請參閱 run
資源參考資料。
事件
事件代表資料轉換作業發生的時間點,並導致資料在來源和目標實體之間移動。
事件包含 連結清單,可定義特定事件中的來源項目和目標項目。系統會使用事件計算沿襲圖,但不會直接在 Google Cloud 控制台中顯示事件。您可以使用 Data Lineage API 建立、讀取及刪除 (但無法更新) 這些項目。
範例
請看以下範例,瞭解如何在 BigQuery 資料表之間複製資料:

資料在資料表間的移動方式由沿襲程序說明 (圖表上以 圖示表示):可能是 SQL
CREATE TABLE AS SELECT
查詢或 INSERT
陳述式。
每次執行該 SQL 陳述式都會構成個別的執行。
執行作業包含事件,可記錄哪些表格做為來源,哪些表格做為目標。在本例中,資料表 customer_year
和 customers
都是來源,目標 top_customer
資料表則為目標。
沿襲圖
歷程圖表會顯示 Data Lineage API 為特定 Dataplex Universal Catalog 項目收集的資訊。歷程圖會顯示單一根項目的上游或下游歷程。「根」是指您要查看沿襲記錄的項目。

Dataplex Universal Catalog 會與 Data Lineage API 搭配運作,找出完整名稱與資料歷程所辨識實體相符的項目。對於相符的 Dataplex Universal Catalog 項目,您可以在詳細資料頁面存取「沿革」分頁,並查看圖表。
血統圖會顯示兩種元素:
寬矩形按鈕,代表建構沿襲資訊時涉及的實體,做為沿襲事件的來源或目標。
較小的正方形按鈕,代表負責建立或更新來源/目標實體的程序。程序按鈕會使用特定圖示,指出是哪個來源系統向 Data Lineage API 報告程序。舉例來說,BigQuery 工作會使用
圖示。
歷程路徑圖表
歷程路徑圖表可協助您瞭解兩項所選資源間的歷程關係。(這與歷程圖表不同,歷程圖表會顯示單一根項目的上游或下游歷程,可能適用於多個來源或目標)。
您選擇根資源和目標資源後,Google Cloud 控制台就會顯示這兩項資源之間的歷程關係。路徑圖表會隱藏這兩項資源之間路徑上的其他資源和程序。

歷程清單檢視
歷程清單檢視畫面會以單一表格顯示實體的詳細歷程資訊。
相較於適合查看相對較小沿襲圖的沿襲圖,沿襲清單檢視畫面可讓您查看具有許多連結的實體沿襲資訊。
下圖顯示Google Cloud 控制台中的沿襲清單檢視畫面範例。以下清單會詳細說明圖片內容。

表格中的每一列都代表兩個項目之間的單一沿襲連結。 在圖表中,這些名稱會顯示為兩個項目之間的歷程連結,包括中間的任何程序節點。舉例來說,
Source
和Target
是資產節點,中間可能有多個程序節點。「方向」選項會指定要在清單中顯示的資料流部分 (相對於根資產):
上游:顯示所選項目的資料來源項目的歷程資訊。在沿襲圖中,這些項目是顯示在所選項目左側的項目。
下游:顯示使用所選項目或衍生自所選項目的項目歷程資訊。在歷程圖中,這些項目會顯示在所選項目的右側。
「時間範圍」選項可讓您根據歷程發生時間篩選歷程資訊:
開始時間:顯示開始時間之後的沿襲。
結束時間:顯示結束時間之前的歷程。
深度是指來源或衍生資源與根資源的距離。清單檢視畫面最多會顯示 1,000 個沿襲連結,與根資源的最大深度為 10 個沿襲連結。如果這個範圍外有任何沿襲,系統會通知您。如要查看這個範圍以外的沿革,請在清單檢視畫面中選取其他實體的名稱。
「詳細資料」面板會顯示連結來源、連結目標,以及建立這個連結的所有程序資訊。
您可以自訂表格中顯示的資料欄,並篩選結果。您也可以將結果匯出為 CSV 檔案。
自動追蹤資料歷程
啟用 Data Lineage API 後, Google Cloud 支援資料歷程的系統就會開始回報資料移動情形。每個整合系統都可以提交不同範圍資料來源的沿襲資訊。如要進一步瞭解各項支援的產品,請參閱以下各節。
BigQuery
在 BigQuery 專案中啟用資料歷程後,Dataplex Universal Catalog 會自動記錄下列項目的歷程資訊:
下列 BigQuery 工作產生的新資料表:
使用 GoogleSQL 中的下列資料操縱語言 (DML) 陳述式產生的現有資料表:
- SELECT 與所列任一資料表類型相關:
- INSERT SELECT
- 合併
- 更新
- 刪除
BigQuery 複製、查詢和載入工作會以程序表示。如要查看程序詳細資料,請在沿襲圖上按一下 。每個程序都包含最新 BigQuery 工作的 BigQuery job_id,位於屬性清單中。
其他服務
資料沿襲支援與下列Google Cloud 服務整合:
自訂資料來源的資料歷程
如果整合系統不支援某個資料來源,您可以使用 Data Lineage API 手動記錄該來源的歷程資訊。
如果您使用與現有 Dataplex Universal Catalog 項目完整名稱相符的 fullyQualifiedName
,Dataplex Universal Catalog 就能為手動記錄的歷程建立歷程圖。如要記錄自訂資料來源的沿襲,請先建立自訂項目。
自訂資料來源的每個程序,屬性清單中最多可包含 sql
個鍵。系統會使用這類鍵的值,在資料沿襲圖的詳細資料面板中,算繪程式碼醒目顯示效果。系統會顯示您提供的 SQL 陳述式。使用者有責任濾除機密資訊。金鑰名稱 sql
區分大小寫。
OpenLineage
如果您已使用 OpenLineage 從其他資料來源收集沿襲資訊,可以將 OpenLineage 事件匯入 Dataplex Universal Catalog,並在 Google Cloud 控制台中顯示這些事件。詳情請參閱「整合 OpenLineage」。
限制
- 系統只會保留所有沿襲資訊 30 天。
- 即使移除相關資料來源,沿襲資訊仍會保留。 也就是說,如果您移除 BigQuery 資料表及其 Dataplex Universal Catalog 項目,您仍可使用 API 讀取該資料表的沿襲,最多 30 天。
存取資料歷程
如要進一步瞭解如何存取資料沿革,請參閱「搭配 Google Cloud 系統使用資料沿革」和「Data Lineage API」。
定價
Dataplex Universal Catalog 會使用進階處理 SKU,針對資料歷程收取費用。詳情請參閱「定價」一文。
如要在 Dataplex Universal Catalog 進階處理 SKU 中,將資料沿革費用與其他費用分開,請在 Cloud 帳單報表中使用標籤
goog-dataplex-workload-type
,並將值設為LINEAGE
。如果您使用
CUSTOM
以外的值呼叫 Data Lineage APIOrigin
sourceType
,就會產生額外費用。