Hive EMRFS S3 向けに最適化されたコミッターを有効にする - Amazon EMR

Hive EMRFS S3 向けに最適化されたコミッターを有効にする

Hive EMRFS S3 向けに最適化されたコミッターは、EMRFS を使用するときに EMR Hive が挿入クエリ用のファイルを書き込む代替方法です。コミッターは Amazon S3 で行うリスト操作と名前変更操作を不要にし、アプリケーションのパフォーマンスを向上させます。この機能は EMR 5.34 および EMR 6.5 以降で利用可能です。

コミッターを有効にする

EMR Hive が HiveEMRFSOptimizedCommitter を使用してすべての Hive 管理テーブルと外部テーブルのデフォルトとしてデータをコミットできるようにするには、EMR 6.5.0 または EMR 5.34.0 クラスターで次の hive-site 設定を使用してください。

[ { "classification": "hive-site", "properties": { "hive.blobstore.use.output-committer": "true" } } ]
注記

hive.exec.paralleltrue に設定されているときは、この機能をオンにしないでください。

制限事項

タグには以下のベーシックな制限があります。

  • Hive で小さなファイルを自動的にマージできるようにすることはサポートされていません。最適化されたコミッターが有効になっている場合でも、デフォルトの Hive コミットロジックが使用されます。

  • Hive ACID テーブルはサポートされていません。最適化されたコミッターが有効になっている場合でも、デフォルトの Hive コミットロジックが使用されます。

  • 書き込まれるファイルのファイル命名法が Hive の <task_id>_<attempt_id>_<copy_n> から <task_id>_<attempt_id>_<copy_n>_<query_id> に変更されました。例えば、次の名前のファイルがあるとします。

    s3://warehouse/table/partition=1/000000_0s3://warehouse/table/partition=1/000000_0-hadoop_20210714130459_ba7c23ec-5695-4947-9d98-8a40ef759222-1 に変更されます。query_id はここでは、ユーザー名、タイムスタンプ、UUID を組み合わせたものです。

  • カスタムパーティションが異なるファイルシステム (HDFS、S3) にある場合、この機能は自動的に無効になります。有効にすると、デフォルトの Hive コミットロジックが使用されます。