

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Hive EMRFS S3 向けに最適化されたコミッターを有効にする
<a name="hive-optimized-committer"></a>

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

## コミッターを有効にする
<a name="enabling-hive-committer"></a>

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.parallel` が `true` に設定されているときは、この機能をオンにしないでください。

## 制限事項
<a name="hive-committer-limitations"></a>

タグには以下のベーシックな制限があります。
+ 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_0` は `s3://warehouse/table/partition=1/000000_0-hadoop_20210714130459_ba7c23ec-5695-4947-9d98-8a40ef759222-1` に変更されます。`query_id` はここでは、ユーザー名、タイムスタンプ、UUID を組み合わせたものです。
+ カスタムパーティションが異なるファイルシステム (HDFS、S3) にある場合、この機能は自動的に無効になります。有効にすると、デフォルトの Hive コミットロジックが使用されます。