Carga de datos a Amazon S3 Express One Zone con Amazon EMR en EKS
A partir de las versiones 7.2.0 y posteriores de Amazon EMR, puede utilizar Amazon EMR en EKS con la clase de almacenamiento de Amazon S3 Express One Zone para mejorar el rendimiento al ejecutar trabajos y cargas de trabajo. S3 Express One Zone es una clase de almacenamiento de Amazon S3 en zona única de alto rendimiento que ofrece acceso constante a los datos en milisegundos de un solo dígito para los datos a los que accede para las aplicaciones más sensibles a la latencia. En el momento de su lanzamiento, S3 Express One Zone ofrece el almacenamiento de objetos en la nube con la latencia más baja y el rendimiento más alto de Amazon S3.
Requisitos previos
Antes de utilizar S3 Express One Zone con Amazon EMR en EKS, debe cumplir los siguientes requisitos previos:
-
Tras configurar Amazon EMR en EKS, cree un clúster virtual.
Introducción a S3 Express One Zone
Siga estos pasos para empezar a utilizar S3 Express One Zone
-
Añada el permiso
CreateSession
a su rol de ejecución de trabajos. Cuando S3 Express One Zone realiza inicialmente una acción comoGET
,LIST
oPUT
en un objeto de S3, la clase de almacenamiento llama aCreateSession
en su nombre. En el siguiente ejemplo, se muestra cómo se puede conceder el permisoCreateSession
.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Resource": "arn:aws:s3express:
<AWS_REGION>
:<ACCOUNT_ID>
:bucket/DOC-EXAMPLE-BUCKET
", "Action": [ "s3express:CreateSession" ] } ] } -
Debe usar el conector S3A de Apache Hadoop para acceder a los buckets de S3 Express, por lo que tendrá que cambiar sus URI de Amazon S3 para usar el esquema
s3a
a fin de usar el conector. Si no usa el esquema, puede cambiar la implementación del sistema de archivos que utiliza para los esquemass3
ys3n
.Para cambiar el esquema
s3
, especifique las siguientes configuraciones de clúster:[ { "Classification": "core-site", "Properties": { "fs.s3.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
Para cambiar el esquema s3n, especifique las siguientes configuraciones de clúster:
[ { "Classification": "core-site", "Properties": { "fs.s3n.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem", "fs.AbstractFileSystem.s3n.impl": "org.apache.hadoop.fs.s3a.S3A" } } ]
-
En su configuración de spark-submit, utilice el proveedor de credenciales de identidad web.
"spark.hadoop.fs.s3a.aws.credentials.provider=com.amazonaws.auth.WebIdentityTokenCredentialsProvider"