翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Hive Live Long and Process (LLAP) の使用
Amazon EMR 6.0.0 は、Hive の Live Long and Process (LLAP) 機能をサポートします。LLAP では、永続的なデーモンによるインテリジェントなメモリ内キャッシングを使用し、以前のデフォルトの Tez コンテナ実行モードと比較してクエリのパフォーマンスを向上させます。
Hive LLAP デーモンは、YARN サービスとして管理および実行されます。YARN サービスは長時間実行している YARN アプリケーションと見なすことができるため、一部のクラスターリソースは Hive LLAP 専用となり、他のワークロードには使用できません。詳細については、LLAP
Amazon EMR で Hive LLAP を有効にする
Amazon EMR で Hive LLAP を有効にするには、クラスターを起動するときに次の設定を指定します。
[
{
"Classification": "hive",
"Properties": {
"hive.llap.enabled": "true"
}
}
]
詳細については、「アプリケーションの設定」を参照してください。
デフォルトでは、Amazon EMR はクラスター YARN リソースの約 60% を Hive LLAP デーモンに割り当てます。Hive LLAP に割り当てるクラスター YARN リソースの割合 (%) と、Hive LLAP 割り当ての対象と見なすタスクノードやコアノードの数は設定できます。
たとえば、次の設定では、3 つのタスクノードまたはコアノードで 3 つのデーモンを使用して Hive LLAP を起動し、3 つのコアノードまたはタスクノードの YARN リソースの 40% を Hive LLAP デーモンに割り当てます。
[
{
"Classification": "hive",
"Properties": {
"hive.llap.enabled": "true",
"hive.llap.percent-allocation": "0.4",
"hive.llap.num-instances": "3"
}
}
]
次の hive-site
設定を分類 API で使用し、デフォルトの LLAP リソース設定を上書きできます。
プロパティ | 説明 |
---|---|
hive.llap.daemon.yarn.container.mb | LLAP デーモンコンテナの合計サイズ (MB 単位) |
hive.llap.daemon.memory.per.instance.mb |
LLAP デーモンコンテナ内の実行プログラムで使用する合計メモリ (MB 単位) |
hive.llap.io.memory.size |
LLAP 入力/出力のキャッシュサイズ |
hive.llap.daemon.num.executors |
LLAP デーモンあたりの実行プログラム数 |
クラスターで Hive LLAP を手動で起動する
LLAP で使用するすべての依存関係と設定は、クラスターの起動の一環として、LLAP tar アーカイブにパッケージ化されます。"hive.llap.enabled": "true"
を使用して LLAP を有効にする場合は、Amazon EMR 再設定を使用して LLAP の設定を変更することをお勧めします。
それ以外の場合、hive-site.xml
を手動で変更するには、hive --service llap
コマンドを使用して LLAP tar アーカイブを再構築する必要があります。次に例を示します。
# Define how many resources you want to allocate to Hive LLAP
LLAP_INSTANCES=<how many llap daemons to run on cluster>
LLAP_SIZE=<total container size per llap daemon>
LLAP_EXECUTORS=<number of executors per daemon>
LLAP_XMX=<Memory used by executors>
LLAP_CACHE=<Max cache size for IO allocator>
yarn app -enableFastLaunch
hive --service llap \
--instances $LLAP_INSTANCES \
--size ${LLAP_SIZE}m \
--executors $LLAP_EXECUTORS \
--xmx ${LLAP_XMX}m \
--cache ${LLAP_CACHE}m \
--name llap0 \
--auxhbase=false \
--startImmediately
Hive LLAP のステータスを確認する
Hive を使用して Hive LLAP のステータスを確認するには、次のコマンドを使用します。
hive --service llapstatus
YARN を使用して Hive LLAP のステータスを確認するには、次のコマンドを使用します。
yarn app -status (name-of-llap-service)
# example:
yarn app -status llap0 | jq
Hive LLAP を起動または停止する
Hive LLAP は永続的な YARN サービスとして実行されるため、Hive LLAP を停止または再起動するには、YARN サービスを停止または再起動します。次のコマンドはこれを示しています。
yarn app -stop llap0
yarn app -start llap0
Hive LLAP デーモンの数を変更する
LLAP インスタンスの数を減らすには、次のコマンドを使用します。
yarn app -flex llap0 -component llap -1
詳細については、「Flex a component of a service