Amazon EMR on EKS での Apache Iceberg の使用 - Amazon EMR

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

Amazon EMR on EKS での Apache Iceberg の使用

Iceberg のランタイム JAR には、Spark ランタイムのサポートに必要な Iceberg クラスが含まれています。次の手順は、Iceberg スパークランタイムを使用してジョブ実行を開始する方法を示しています。

Amazon EMR on EKS アプリケーションで Apache Iceberg を使用するには
  1. アプリケーション設定でジョブ実行を開始して Spark ジョブを送信するときに、Iceberg Spark ランタイム JAR ファイルを含めます。

    --job-driver '{"sparkSubmitJobDriver" : {"sparkSubmitParameters" : "--jars local:///usr/share/aws/iceberg/lib/iceberg-spark3-runtime.jar"}}'
  2. さらに別の Iceberg 設定を含めます。

    --configuration-overrides '{ "applicationConfiguration": [ "classification" : "spark-defaults", "properties" : { "spark.sql.catalog.dev.warehouse" : "s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/ ", "spark.sql.extensions ":" org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions ", "spark.sql.catalog.dev" : "org.apache.iceberg.spark.SparkCatalog", "spark.sql.catalog.dev.catalog-impl" : "org.apache.iceberg.aws.glue.GlueCatalog", "spark.sql.catalog.dev.io-impl": "org.apache.iceberg.aws.s3.S3FileIO" } ] }'

EMR の Apache Iceberg リリースバージョンの詳細については、「Iceberg release history」を参照してください。

カタログ統合用の Spark セッション設定

Iceberg Glue カタログ統合の Spark AWS セッション設定

このサンプルでは、Iceberg を次の と統合する方法を示します AWS Glue クローラー。

spark-sql \ --conf spark.sql.catalog.rms = org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.rms.type = glue \ --conf spark.sql.catalog.rms.glue.id = glue RMS catalog ID \ --conf spark.sql.catalog.rms.glue.account-id = AWS account ID \ --conf spark.sql.extensions= org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

サンプルクエリを以下に示します。

SELECT * FROM rms.rmsdb.table1

Iceberg REST Glue カタログ統合の Spark AWS セッション設定

このサンプルでは、Iceberg REST を次の と統合する方法を示します AWS Glue クローラー。

spark-sql \ --conf spark.sql.catalog.rms = org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.rms.type = rest \ --conf spark.sql.catalog.rms.warehouse = glue RMS catalog ID \ --conf spark.sql.catalog.rms.uri = glue endpoint URI/iceberg \ --conf spark.sql.catalog.rms.rest.sigv4-enabled = true \ --conf spark.sql.catalog.rms.rest.signing-name = glue \ --conf spark.sql.extensions= org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions

サンプルクエリを以下に示します。

SELECT * FROM rms.rmsdb.table1

この設定は、Redshift マネージドストレージでのみ機能します。Amazon S3 の FGAC はサポートされていません。