

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

# Apache Iceberg テーブルを宛先として使用するための前提条件
<a name="apache-iceberg-prereq"></a>

以下のオプションから選択し、必要な前提条件を完了します。

**Topics**
+ [

## Amazon S3 で Iceberg テーブルに配信するための前提条件
](#iceberg-tables-prerequisites)
+ [

## Amazon S3 Tables に配信するための前提条件
](#s3-tables-prerequisites)

## Amazon S3 で Iceberg テーブルに配信するための前提条件
<a name="iceberg-tables-prerequisites"></a>

開始する前に、次の前提条件を完了します。
+ **Amazon S3 バケットを作成する** – テーブルの作成中にメタデータファイルパスを追加するには、Amazon S3 バケットを作成する必要があります。詳細については、「[Create an S3 bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html)」を参照してください。
+ **必要な許可を持つ IAM ロールを作成する** – Firehose には、 AWS Glue テーブルにアクセスしてデータを Amazon S3 に書き込むための特定の許可を持つ IAM ロールが必要です。同じロールを使用して、Amazon S3 バケット AWS Glue へのアクセスを許可します。Iceberg テーブルと Firehose ストリームを作成するときに、この IAM ロールが必要になります。詳細については、「[Firehose に Amazon S3 Tables へのアクセスを許可する](controlling-access.md#using-s3-tables)」を参照してください。
+ **Apache Iceberg テーブルを作成する** – 更新と削除のために Firehose ストリームで一意のキーを設定する場合、Firehose はテーブルと一意のキーがストリーム作成の一部として存在しているかどうかを検証します。このシナリオでは、Firehose ストリームを作成する前にテーブルを作成する必要があります。 AWS Glue を使用して Apache Iceberg テーブルを作成できます。詳細については、「[Apache Iceberg テーブルの作成](https://docs.aws.amazon.com/glue/latest/dg/populate-otf.html#creating-iceberg-tables)」を参照してください。Firehose ストリームで一意のキーを設定していない場合、Firehose ストリームを作成する前に Iceberg テーブルを作成する必要はありません。
**注記**  
Firehose は、Apache Iceberg テーブルのために、次のテーブルバージョンと形式をサポートします。  
**テーブル形式バージョン** – Firehose は [V2 テーブル形式](https://iceberg.apache.org/spec/#version-2)のみをサポートします。V1 形式でテーブルを作成しないでください。V1 形式でテーブルを作成するとエラーが発生し、代わりにデータが S3 エラーバケットに配信されます。
**データストレージ形式** – Firehose は、Parquet 形式でデータを Apache Iceberg テーブルに書き込みます。
**行レベルのオペレーション** – Firehose は、Apache Iceberg テーブルへのデータの書き込みにおいて Merge-on-Read (MOR) モードをサポートします。

## Amazon S3 Tables に配信するための前提条件
<a name="s3-tables-prerequisites"></a>

Amazon S3 テーブルバケットにデータを配信するには、次の前提条件を完了します。
+ 「[Getting started with Amazon S3 Tables](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-getting-started.html)」で説明されている、Amazon S3 バケット、名前空間、およびテーブルバケット内のテーブルの作成、およびその他の統合手順を実行します。「[S3 tables catalog integration limitations](https://docs.aws.amazon.com/lake-formation/latest/dg/notes-s3-catalog.html)」で指定されているように、S3 Tables カタログ統合によって課された制限があるため、列名は小文字にする必要があります。
+ **必要な許可を持つ IAM ロールを作成する** – Firehose には、 AWS AWS Glue テーブルにアクセスしてデータを Amazon S3 テーブルバケットに書き込むための特定の許可を持つ IAM ロールが必要です。Amazon S3 テーブルバケット内のテーブルに書き込むには、IAM ロールに必要なアクセス許可も提供する必要があります。Amazon S3 Tables カタログに必要なアクセス許可は、使用するアクセスコントロールモードによって異なります。
  + **IAM アクセスコントロール** – Firehose 配信ロールには、Amazon S3 Tables リソースに対する IAM アクセス許可が直接必要です。
  + **Lake Formation アクセスコントロール** – Firehose 配信ロールには、テーブルリソースへのアクセスを管理するためのアクセス AWS AWS Lake Formation 許可が必要です。 は、Data Catalog リソースのきめ細かなアクセスコントロールを可能にする独自のアクセス許可モデル AWS Lake Formation を使用します。

  Firehose ストリームを作成するときに、この IAM ロールを設定します。詳細については、「[Grant Firehose access to Amazon S3 Tables](https://docs.aws.amazon.com/firehose/latest/dev/controlling-access.html#using-s3-tables)」を参照してください。

段階的な統合については、ブログ「[Build a data lake for streaming data with Amazon S3 Tables and Amazon Data Firehose](https://aws.amazon.com/blogs/storage/build-a-data-lake-for-streaming-data-with-amazon-s3-tables-and-amazon-data-firehose/)」を参照してください。詳細については、[AWS 「分析サービスでの Amazon S3 Tables の使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-integrating-aws.html)」も参照してください。