Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Transférez des données dans S3 Express One Zone avec EMR Serverless
Avec les versions 7.2.0 et supérieures d'Amazon EMR, vous pouvez utiliser EMR Serverless avec la classe de stockage Amazon S3 Express One Zone pour améliorer les performances lorsque vous exécutez des tâches et des charges de travail. S3 Express One Zone est une classe de stockage Amazon S3 à zone unique à hautes performances qui fournit un accès aux données constant à un chiffre en millisecondes pour la plupart des applications sensibles à la latence. À son lancement, S3 Express One Zone offre la latence la plus faible et les meilleures performances de stockage d’objets cloud dans Amazon S3.
Prérequis
-
Autorisations de zone S3 Express One : lorsque S3 Express One Zone effectue initialement une action similaire
GET
ouPUT
sur un objet S3, la classe de stockage appelleCreateSession
en votre nom.LIST
Votre politique IAM doit autoriser l's3express:CreateSession
autorisation afin que S3A le connecteur peut appeler l'CreateSession
API. Pour obtenir un exemple de politique avec cette autorisation, voir la rubrique Bien démarrer avec S3 Express One Zone. -
S3A connecteur — Pour configurer Spark afin d'accéder aux données d'un compartiment Amazon S3 utilisant la classe de stockage S3 Express One Zone, vous devez utiliser le connecteur Apache Hadoop S3A. Pour utiliser le connecteur, assurez-vous que tous les S3 URIs utilisent le
s3a
schéma. Si ce n’est pas le cas, vous pouvez modifier l’implémentation du système de fichiers que vous utilisez pour les schémass3
ets3n
.
Pour modifier le schéma s3
, spécifiez les configurations de cluster suivantes :
[ { "Classification": "core-site", "Properties": { "fs.s3.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
Pour modifier le schéma s3n
, spécifiez les configurations de cluster suivantes :
[ { "Classification": "core-site", "Properties": { "fs.s3n.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3n.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
Bien démarrer avec S3 Express One Zone
Suivez ces étapes pour commencer à utiliser S3 Express One Zone.
-
Créez un point de terminaison VPC. Ajoutez le point de terminaison
com.amazonaws.us-west-2.s3express
au point de terminaison du VPC. -
Suivez Getting started with Amazon EMR Serverless pour créer une application avec le label de version 7.2.0 ou supérieur d'Amazon EMR.
-
Configurez votre application pour utiliser le point de terminaison VPC nouvellement créé, un groupe de sous-réseaux privés et un groupe de sécurité.
-
Ajoutez l'
CreateSession
autorisation à votre rôle d'exécution des tâches.{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "*", "Action": [ "s3express:CreateSession" ] } ] }
-
Exécutez votre travail. Notez que vous devez utiliser le
S3A
schéma pour accéder aux compartiments S3 Express One Zone.aws emr-serverless start-job-run \ --application-id
<application-id>
\ --execution-role-arn<job-role-arn>
\ --name<job-run-name>
\ --job-driver '{ "sparkSubmit": { "entryPoint": "s3a://<DOC-EXAMPLE-BUCKET>
/scripts/wordcount.py", "entryPointArguments":["s3a://<DOC-EXAMPLE-BUCKET>
/emr-serverless-spark/output"], "sparkSubmitParameters": "--conf spark.executor.cores=4 --conf spark.executor.memory=8g --conf spark.driver.cores=4 --conf spark.driver.memory=8g --conf spark.executor.instances=2 --conf spark.hadoop.fs.s3a.change.detection.mode=none --conf spark.hadoop.fs.s3a.endpoint.region={<AWS_REGION>
} --conf spark.hadoop.fs.s3a.select.enabled=false --conf spark.sql.sources.fastS3PartitionDiscovery.enabled=false }'