すべてのプロダクト
Search
ドキュメントセンター

Data Lake Formation:EMR ゲートウェイの EMR-HOOK コンポーネントのアップグレード

最終更新日:Jun 22, 2026

このトピックでは、EMR ゲートウェイの EMR-HOOK コンポーネントをアップグレードする方法を説明します。

背景

EMR-CLI でカスタムデプロイされた EMR ゲートウェイでコンピューティングタスクを実行し、Data Lake Formation (DLF) のデータ概要のアクセス数メトリクスやライフサイクル管理のデータアクセス頻度ルールなどの機能を使用する場合は、EMR-HOOK コンポーネントを手動でアップグレードする必要があります。

説明

アップグレードプロセスは、実行中のコンピューティングタスクには影響しません。変更は、アップグレード完了後に開始される新しいコンピューティングタスクに自動的に適用されます。

前提条件

手順

EMR-5.10.1、EMR-3.44.1 以降

ステップ 1:JAR ファイルのアップグレード

SSH を使用して root としてゲートウェイにログインします。 ${region} をお使いのリージョン ID (例:cn-hangzhou) に置き換えてから、次のスクリプトを実行します。

sudo mkdir -p /opt/apps/EMRHOOK/upgrade/
sudo wget https://dlf-repo-${region}.oss-${region}-internal.aliyuncs.com/emrhook/latest/emrhook.tar.gz -P /opt/apps/EMRHOOK/upgrade
sudo tar -p -zxf /opt/apps/EMRHOOK/upgrade/emrhook.tar.gz -C /opt/apps/EMRHOOK/upgrade/
sudo cp -p /opt/apps/EMRHOOK/upgrade/emrhook/* /opt/apps/EMRHOOK/emrhook-current/

ステップ 2:Hive 設定の変更

重要

ご使用の Hive のバージョンに基づいて、正しい ${hive-jar} を選択してください。 Hive 2 には hive-hook-hive23.jar を、Hive 3 には hive-hook-hive31.jar を使用します。

設定ファイル

パラメーター

hive-site.xml (/etc/taihao-apps/hive-conf/hive-site.xml)

hive.aux.jars.path

既存の値に ,/opt/apps/EMRHOOK/emrhook-current/${hive-jar} を追加してください。

説明

区切り文字としてコンマ (,) を使用してください。

hive.exec.post.hooks

既存の値に ,com.aliyun.emr.meta.hive.hook.LineageLoggerHook を追加してください。

hive-env.sh (/etc/taihao-apps/hive-conf/hive-env.sh)

hive_aux_jars_path

既存の値に ,/opt/apps/EMRHOOK/emrhook-current/${hive-jar} を追加してください。

説明

区切り文字としてコンマ (,) を使用してください。

ステップ 3:Spark 設定の変更

重要

ご使用の Spark のバージョンに基づいて、正しい ${spark-jar} を選択してください。 Spark 2 には spark-hook-spark24.jar を、Spark 3 には spark-hook-spark30.jar を使用します。

設定ファイル

パラメーター

spark-defaults.conf (/etc/taihao-apps/spark-conf/spark-defaults.conf)

spark.driver.extraClassPath

既存の値に :/opt/apps/EMRHOOK/emrhook-current/${spark-jar} を追加してください。

説明

区切り文字としてコロン (:) を使用してください。

spark.executor.extraClassPath

既存の値に :/opt/apps/EMRHOOK/emrhook-current/${spark-jar} を追加してください。

説明

区切り文字としてコロン (:) を使用してください。

spark.sql.queryExecutionListeners

既存の値に ,com.aliyun.emr.meta.spark.listener.EMRQueryLogger を追加してください。

EMR-5.10.1、EMR-3.44.1 以前

ステップ 1:JAR ファイルのアップグレード

  1. SSH を使用して root としてゲートウェイにログインします。 ${region} をお使いのリージョン ID (例:cn-hangzhou) に置き換えてください。

    次のスクリプトを実行して、最新の EMR-HOOK の JAR ファイルをダウンロードし、展開してください。

    sudo mkdir -p /opt/apps/EMRHOOK/upgrade/
    sudo wget https://dlf-repo-${region}.oss-${region}-internal.aliyuncs.com/emrhook/latest/emrhook.tar.gz -P /opt/apps/EMRHOOK/upgrade
    sudo tar -p -zxf /opt/apps/EMRHOOK/upgrade/emrhook.tar.gz -C /opt/apps/EMRHOOK/upgrade/
  2. E-MapReduce (EMR) のリリースによって、同梱されている EMR-HOOK コンポーネントのマイナーバージョンが異なる場合があります。 したがって、ダウンロードした JAR ファイルを置き換える前に、既存の JAR ファイルのバージョンと一致するように名前を変更する必要があります。

    たとえば、EMR-3.43.1 には EMR-HOOK コンポーネントのバージョン 1.1.4 が含まれており、JAR ファイルの命名規則は hive-hook-${version}-hive23.jar です。 展開した JAR ファイルの名前をこの規則に合わせて変更する必要があります。

    cd /opt/apps/EMRHOOK/upgrade/emrhook
    mv hive-hook-hive23.jar hive-hook-1.1.4-hive23.jar
    mv hive-hook-hive31.jar hive-hook-1.1.4-hive31.jar
    mv spark-hook-spark24.jar spark-hook-1.1.4-spark24.jar
    mv spark-hook-spark30.jar spark-hook-1.1.4-spark30.jar
    [root@master-1-1 emrhook]# ll
    total 514
    -rw-r--r-- 1 502 games 122762 Sep 22 2022 hive-hook-1.1.4-hive23.jar
    -rw-r--r-- 1 502 games 121183 Sep 22 2022 hive-hook-1.1.4-hive31.jar
    -rw-r--r-- 1 502 games 158682 Sep 22 2022 spark-hook-1.1.4-spark24.jar
    -rw-r--r-- 1 502 games 121298 Sep 22 2022 spark-hook-1.1.4-spark30.jar
  3. ファイルの名前を変更したら、次のコマンドを実行して古いファイルを置き換えてください。

    sudo cp -p /opt/apps/EMRHOOK/upgrade/emrhook/* /opt/apps/EMRHOOK/emrhook-current/

ステップ 2:Hive 設定の変更

重要

${hive-jar} には、ご使用の Hive のバージョンに一致する JAR ファイルを選択してください。Hive 2 の場合は hive-hook-${emrhook-version}-hive23.jar、Hive 3 の場合は hive-hook-${emrhook-version}-hive31.jar です。 ${emrhook-version} をお使いの EMR-HOOK コンポーネントのバージョン番号に置き換えてください。 たとえば、完全なファイル名は hive-hook-1.1.4-hive23.jar のようになります。

設定ファイル

パラメーター

hive-site.xml (/etc/taihao-apps/hive-conf/hive-site.xml)

hive.aux.jars.path

既存の値に ,/opt/apps/EMRHOOK/emrhook-current/${hive-jar} を追加してください。

説明

区切り文字としてコンマ (,) を使用してください。

hive.exec.post.hooks

既存の値に ,com.aliyun.emr.meta.hive.hook.LineageLoggerHook を追加してください。

hive-env.sh (/etc/taihao-apps/hive-conf/hive-env.sh)

hive_aux_jars_path

既存の値に ,/opt/apps/EMRHOOK/emrhook-current/${hive-jar} を追加してください。

説明

区切り文字としてコンマ (,) を使用してください。

ステップ 3:Spark 設定の変更

重要

${spark-jar} には、ご使用の Spark のバージョンに一致する JAR ファイルを選択してください。Spark 2 の場合は spark-hook-${emrhook-version}-spark24.jar、Spark 3 の場合は spark-hook-${emrhook-version}-spark30.jar です。 ${emrhook-version} をお使いの EMR-HOOK コンポーネントのバージョン番号に置き換えてください。 たとえば、完全なファイル名は spark-hook-1.1.4-spark24.jar のようになります。

設定ファイル

パラメーター

spark-defaults.conf (/etc/taihao-apps/spark-conf/spark-defaults.conf)

spark.driver.extraClassPath

既存の値に :/opt/apps/EMRHOOK/emrhook-current/${spark-jar} を追加してください。

説明

区切り文字としてコロン (:) を使用してください。

spark.executor.extraClassPath

既存の値に :/opt/apps/EMRHOOK/emrhook-current/${spark-jar} を追加してください。

説明

区切り文字としてコロン (:) を使用してください。

spark.sql.queryExecutionListeners

既存の値に ,com.aliyun.emr.meta.spark.listener.EMRQueryLogger を追加してください。