使用DataWorks資料地圖查看錶或資料服務API時,可在對應的詳情頁面查看詳細的血緣資訊,這對於資料溯源及管理有很大協助,本文為您介紹資料地圖的血緣查看能力。
表血緣
查看入口
尋找某張表並進入表詳情頁面後,您可以單擊血緣資訊頁簽,查看錶級和欄位級的血緣詳情。同時,您也可以進行影響分析,擷取當前表的下遊表列表,支援將下遊表列表下載為本地檔案或通過郵件進行變更通知。
資料地圖支援展示基於調度作業、資料流轉資訊解析得出的表和表、欄位和欄位之間的血緣關係;暫不包含臨時查詢等手動操作產生的血緣關係。離線資料T+1更新其血緣關係。

各資料來源使用限制
E-MapReduce
DataLake或自訂叢集若要在DataWorks管理中繼資料,需先在叢集側配置EMR-HOOK。若未配置,則在DataWorks中無法展示血緣關係。配置EMR-HOOK,詳情請參見配置Hive的EMR-HOOK。
EMR on ACK類型的Spark叢集不支援查看血緣,EMR Serverless Spark叢集支援查看血緣。
EMR Presto節點的任務不支援查看血緣關係。
AnalyticDB for MySQL
需要提交工單為AnalyticDB for MySQL執行個體開啟資料血緣功能。
當中繼資料來源為AnalyticDB for Spark類型時,支援自動採集。
當中繼資料來源為AnalyticDB for Spark類型時,配置spark參數
spark.sql.queryExecutionListeners = com.aliyun.dataworks.meta.lineage.LineageListener後,可支援即時血緣。
對於AnalyticDB for MySQL類型的表,部分SQL處理命令不支援在資料地圖中產生血緣關係資訊,限制詳情如下。
不支援展示血緣的SQL命令:
不支援的SQL
樣本
不支援
join、union,或使用了*等關鍵字。例如,以下SQL中使用了
*,資料地圖無法展示血緣關係。INSERT INTO test SELECT * FROM test1, test2 WHERE test1.id = test2.id不支援子查詢。
例如,以下SQL中包含子查詢,資料地圖無法展示血緣關係。
SELECT column1, column2 FROM table1 WHERE column3 IN (SELECT column4 FROM table2 WHERE column5 = 'value')可正常展示血緣的SQL命令樣本:
樣本1:建立名為A的表(不包含具體列資訊),同時從B表中選擇某些具體列(不包含*)作為A表的內容。例如:
CREATE TABLE test AS SELECT id,name FROM test1;樣本2:將表A中滿足條件column1= value1的某些具體列(不包含*)資料插入到B表(不包含具體列資訊)中。例如:
INSERT INTO test SELECT id,name FROM test1 WHERE name='test';樣本3:將A表的某些列(不包含*)資料覆蓋寫入到某個資料庫中的B表中。例如:
INSERT OVERWRITE INTO db_name.test SELECT id,name FROM test1;
CDH
如果需要在資料地圖中展示CDH Spark SQL及CDH Spark節點資料加工過程的表血緣關係,請按照資料加工的模組,在的Spark參數處單獨配置。
進入管理中心頁面。
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,在下拉框中選擇對應工作空間後單擊進入管理中心。
在左側導覽列單擊叢集管理,然後找到已建立的目標CDH叢集。
單擊編輯SPARK參數。

根據具體資料加工模組添加Spark參數。
例如要在資料地圖中展示CDH Spark SQL及CDH Spark節點在營運中心-周期執行個體模組中資料加工過程的表血緣關係,則需要在對應模組中,添加如下參數:
Spark屬性名稱:
spark.sql.queryExecutionListenersSpark屬性值:
com.aliyun.dataworks.meta.lineage.LineageListener
單擊確認完成編輯。
Lindorm
僅執行個體模式支援血緣資訊採集,串連串模式無法採集血緣資訊。
如果需要在資料地圖中展示Lindorm Spark及Lindorm Spark SQL節點資料加工過程的表血緣關係,請按照資料加工的模組,在的Spark參數處單獨配置。
進入管理中心頁面。
登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,在下拉框中選擇對應工作空間後單擊進入管理中心。
在左側導覽列單擊計算資源,然後找到已建立的Lindorm計算資源。
單擊編輯SPARK參數。
根據具體資料加工模組添加Spark參數。
例如要在資料地圖中展示Lindorm Spark及Lindorm Spark SQL節點在營運中心-周期執行個體模組中資料加工過程的表血緣關係,則需要在對應模組中,添加如下參數:
Spark屬性名稱:
spark.sql.queryExecutionListeners。Spark屬性值:
com.aliyun.dataworks.meta.lineage.LineageListener。
單擊確認,完成Spark參數配置。
各資料來源血緣展示情況說明
資料來源 | Data Integration | 資料開發 | ||
表級血緣 | 欄位級血緣 | 表級血緣 | 欄位級血緣 | |
AnalyticDB MySQL
|
|
|
|
|
AnalyticDB PostgreSQL
|
|
|
|
|
ClickHouse
|
|
|
|
|
CDH/CDP
|
|
| Hive、Impala、Spark、Spark SQL
| Hive、Impala、Spark、Spark SQL
|
E-MapReduce
|
(OSS、Hive)
|
(OSS、Hive)
| Hive、Spark(spark-submit)、Spark SQL(支援Hudi格式)、Shell(使用beeline提交的Hive SQL)
| Hive、Spark(spark-submit)、Spark SQL(支援Hudi格式)、Shell(使用beeline提交的Hive SQL)
|
Hologres
|
|
|
|
|
Kafka
|
(Kafka同步至MaxCompute/Hologres) |
|
|
|
Lindorm
|
|
|
|
|
MaxCompute
|
|
|
|
|
MySQL
|
(MySQL同步至MaxCompute/Hologres) |
|
|
|
Oracle
|
|
|
|
|
OceanBase
|
|
|
|
|
OSS
|
|
|
|
|
PolarDB MySQL
|
|
|
|
|
PolarDB PostgreSQL
|
|
|
|
|
PostgreSQL
|
|
|
|
|
StarRocks
|
|
|
|
|
SQL Server
|
|
|
|
|
Tablestore(OTS)
|
|
|
|
|
資料服務API血緣
尋找某個資料服務API並進入API詳情頁面後,您可以單擊血緣資訊頁簽,查看API的血緣詳情。

詳情頁
即時同步