翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon EMR on EKS を使用して Amazon S3 Express One Zone にデータをアップロードする
リリース 7.2.0 以降の Amazon EMR では、Amazon EMR on EKS を Amazon S3 Express One Zone ストレージクラスと組み合わせて使用することで、ジョブとワークロードを実行する際のパフォーマンスを向上させることができます。S3 Express One Zone は、最もレイテンシーの影響を受けやすいアプリケーションに 1 桁のミリ秒単位で一貫したデータアクセスを提供する、高パフォーマンスの単一ゾーンの Amazon S3 ストレージクラスです。リリース時点で、S3 Express One Zone は、Amazon S3 の中でレイテンシーが最も低く、パフォーマンスの最も高いクラウドオブジェクトストレージを提供しています。
前提条件
Amazon EMR on EKS で S3 Express One Zone を使用するには、次の前提条件を満たしている必要があります。
-
Amazon EMR on EKS をセットアップしたら、仮想クラスターを作成します。
S3 Express One Zone の使用を開始する
S3 Express One Zone の使用を開始するには、次の手順に従います。
-
CreateSession
アクセス許可をジョブの実行ロールに追加します。S3 Express One Zone が S3 オブジェクトに対してGET
、LIST
、PUT
などのアクションを最初に実行すると、ストレージクラスがユーザーに代わってCreateSession
を呼び出します。次の例は、CreateSession
権限を付与する方法を示しています。{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:s3express:
<AWS_REGION>
:<ACCOUNT_ID>
:bucket/DOC-EXAMPLE-BUCKET
", "Action": [ "s3express:CreateSession" ] } ] } -
Apache Hadoop コネクタ S3A を使用して S3 Express バケットにアクセスする必要があるため、Amazon S3 URI を変更して
s3a
スキームを使用してコネクタを使用する必要があります。このスキームを使用していない場合は、s3
スキームとs3n
スキームに使用するファイルシステム実装を変更できます。s3
スキームを変更するには、以下のクラスター設定を指定します。[ { "Classification": "core-site", "Properties": { "fs.s3.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
s3n スキームを変更するには、以下のクラスター設定を指定します。
[ { "Classification": "core-site", "Properties": { "fs.s3n.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3n.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
-
spark-submit 設定で、ウェブ ID 認証情報プロバイダーを使用します。
"spark.hadoop.fs.s3a.aws.credentials.provider=com.amazonaws.auth.WebIdentityTokenCredentialsProvider"