全部產品
Search
文件中心

:Hive使用擴充記錄資料血緣和訪問歷史

更新時間:Jul 01, 2024

E-MapReduce叢集預設在Hive服務上整合了EMR-HOOK。EMR-HOOK可以收集作業的SQL資訊,例如資料血緣、訪問頻次等。通過EMR-HOOK,您可以利用資料湖構建(DLF)的資料概況,以統計表和分區的訪問次數。同時,您也可以使用DataWorks來管理資料血緣。本文將為您介紹如何配置Hive服務的EMR-HOOK。

前提條件

已建立DataLake或自訂叢集,且選擇了Hive服務,詳情請參見建立叢集

使用限制

  • EMR-HOOK不支援在通過EMR-CLI自訂部署的Gateway環境下收集作業相關的SQL資訊。

  • EMR-5.16.0之前版本、EMR-3.50.0之前版本,不支援在Gateway上同步hive.exec.post.hooks(Hive)和spark.sql.queryExecutionListeners(Spark)參數;EMR-5.16.0及之後版本、EMR-3.50.0及之後版本,不僅實現了上述參數在Gateway節點上的同步,還引入了新的參數hive_aux_jars_path_gateway_only,允許您在Gateway節點上獨立使用自訂擴充的JAR檔案來增強功能。

注意事項

  • EMR-5.14.0之前版本、EMR-3.48.0之前版本,EMR-HOOK預設開啟。

  • EMR-5.14.0及之後版本、EMR-3.48.0及之後版本,EMR-HOOK預設關閉,需要手動開啟。

操作步驟

  1. 進入叢集服務頁面。

    1. 登入E-MapReduce控制台

    2. 在頂部功能表列處,根據實際情況選擇地區和資源群組

    3. 在EMR on ECS頁面,單擊目的地組群操作列的叢集服務

  2. 配置EMR-HOOK。

    1. 叢集服務頁面,單擊Hive服務地區的配置

    2. 配置頁面的相應頁簽下,可以編輯或新增如下EMR-HOOK的配置項。

      頁簽

      參數

      描述

      hive-site.xml

      hive.exec.post.hooks

      監聽Hive服務執行的SQL資訊,用於資料血緣和訪問頻次。

      • 開啟EMR-HOOK時,參數值填寫為com.aliyun.emr.meta.hive.hook.LineageLoggerHook

      • 關閉EMR-HOOK時,參數值置為空白。

      dlf.emrhook.webtracking

      是否開啟訪問頻次上報。取值如下:

      • true:開啟。

      • false:不開啟。

      hivemetastore-site.xml

      hive.metastore.event.listeners

      監聽Hive中繼資料變更的事件資訊,用於資料血緣。

      • 開啟EMR-HOOK時,參數值填寫為com.aliyun.emr.meta.hive.listener.MetaStoreListener

      • 關閉EMR-HOOK時,參數值置為空白。

      hive.metastore.pre.event.listeners

      監聽Hive中繼資料變更之前的事件資訊,用於資料血緣。

      • 開啟EMR-HOOK時,參數值填寫為com.aliyun.emr.meta.hive.listener.MetaStorePreAuditListener

      • 關閉EMR-HOOK時,參數值置為空白。

      說明

      如果關閉EMR-HOOK,則資料湖構建(DLF)控制台資料表的資料概況頁面將不再顯示當天訪問次數最近7天訪問次數最近30天訪問次數的資料。

    3. 儲存配置。

      1. 配置頁面,單擊儲存

      2. 在彈出的對話方塊中,輸入執行原因,單擊儲存

  3. 重啟Hive。

    1. 配置頁面,選擇更多操作> 重啟

    2. 在彈出的對話方塊中,輸入執行原因,單擊確定

    3. 確認對話中,單擊確定

相關文檔

配置Spark服務的EMR-HOOK詳情,請參見SparkSQL使用擴充記錄資料血緣和訪問歷史