SparkSQL使用擴(kuò)展記錄數(shù)據(jù)血緣和訪問歷史
E-MapReduce集群默認(rèn)在Spark2和Spark3服務(wù)上集成了EMR-HOOK。EMR-HOOK可以收集作業(yè)的SQL信息,例如數(shù)據(jù)血緣、訪問頻次等。通過EMR-HOOK,您可以使用數(shù)據(jù)湖構(gòu)建(DLF)的數(shù)據(jù)概況,以統(tǒng)計表和分區(qū)的訪問次數(shù),您也可以使用DataWorks來管理數(shù)據(jù)血緣。本文為您介紹如何配置Spark服務(wù)的EMR-HOOK。
前提條件
已創(chuàng)建DataLake或自定義集群,且選擇了Spark服務(wù),詳情請參見創(chuàng)建集群。
使用限制
EMR-HOOK不支持在通過EMR-CLI自定義部署的Gateway環(huán)境下收集作業(yè)相關(guān)的SQL信息。
EMR-5.16.0之前版本、EMR-3.50.0之前版本,不支持在Gateway上同步hive.exec.post.hooks(Hive)和spark.sql.queryExecutionListeners(Spark)參數(shù);EMR-5.16.0及之后版本、EMR-3.50.0及之后版本,不僅實現(xiàn)了上述參數(shù)在Gateway節(jié)點上的同步,還引入了新的參數(shù)hive_aux_jars_path_gateway_only,允許您在Gateway節(jié)點上獨立使用自定義擴(kuò)展的JAR文件來增強(qiáng)功能。
注意事項
EMR-5.14.0之前版本、EMR-3.48.0之前版本,EMR-HOOK默認(rèn)開啟。
EMR-5.14.0及之后版本、EMR-3.48.0及之后版本,EMR-HOOK默認(rèn)關(guān)閉,需要手動開啟。
操作步驟
進(jìn)入集群服務(wù)頁面。
在頂部菜單欄處,根據(jù)實際情況選擇地域和資源組。
在EMR on ECS頁面,單擊目標(biāo)集群操作列的集群服務(wù)。
配置EMR-HOOK。
在集群服務(wù)頁面,單擊Spark2或Spark3服務(wù)區(qū)域的配置。
在配置頁面的相應(yīng)頁簽下,可以編輯或新增如下EMR-HOOK的配置項。
頁簽
參數(shù)
說明
spark-defaults.conf
spark.sql.queryExecutionListeners
監(jiān)聽Spark服務(wù)執(zhí)行的SQL信息,用于數(shù)據(jù)血緣和訪問頻次。
開啟EMR-HOOK時,參數(shù)值填寫為
com.aliyun.emr.meta.spark.listener.EMRQueryLogger
。關(guān)閉EMR-HOOK時,參數(shù)值置為空。
hive-site.xml
dlf.emrhook.webtracking
是否開啟訪問頻次上報。取值如下:
true:開啟。
false:不開啟。
說明如果關(guān)閉EMR-HOOK,則數(shù)據(jù)湖構(gòu)建(DLF)控制臺數(shù)據(jù)表的數(shù)據(jù)概況頁面將不再顯示當(dāng)天訪問次數(shù)、最近7天訪問次數(shù)、最近30天訪問次數(shù)的數(shù)據(jù)。
保存配置。
在配置頁面,單擊保存。
在彈出的對話框中,輸入執(zhí)行原因,單擊保存。
重啟Spark。
在配置頁面,選擇更多操作> 重啟。
在彈出的對話框中,輸入執(zhí)行原因,單擊確定。
在確認(rèn)對話中,單擊確定。
相關(guān)文檔
配置Hive服務(wù)的EMR-HOOK詳情,請參見Hive使用擴(kuò)展記錄數(shù)據(jù)血緣和訪問歷史。