

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Lea, escriba y cargue datos en Amazon S3 Express One Zone con Amazon EMR en EKS
<a name="upload-data-s3-express"></a>

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](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html) 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
<a name="upload-data-s3-express-prereqs"></a>

Antes de utilizar S3 Express One Zone con Amazon EMR en EKS, debe cumplir los siguientes requisitos previos:
+ [Una configuración completada de Amazon EMR en EKS](https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/setting-up.html).
+ Tras configurar Amazon EMR en EKS, [cree un clúster virtual](https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/virtual-cluster.html#create-virtul-cluster).

## Introducción a S3 Express One Zone
<a name="upload-data-s3-express-getting-started"></a>

Siga estos pasos para empezar a utilizar S3 Express One Zone

1. Añada el permiso `CreateSession` a su rol de ejecución de trabajos. Cuando S3 Express One Zone realiza inicialmente una acción como `GET`, `LIST` o `PUT` en un objeto de S3, la clase de almacenamiento llama a `CreateSession` en su nombre. En el siguiente ejemplo, se muestra cómo se puede conceder el permiso `CreateSession`.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Resource": [
           "arn:aws:s3express:*:*:bucket/DOC-EXAMPLE-BUCKET"
         ],
         "Action": [
           "s3express:CreateSession"
         ],
         "Sid": "AllowS3EXPRESSCreatesession"
       }
     ]
   }
   ```

------

1. Debe usar el conector S3A de Apache Hadoop para acceder a los buckets de S3 Express, así que cambie su Amazon S3 URIs para usar el `s3a` esquema de uso del conector. Si no usa el esquema, puede cambiar la implementación del sistema de archivos que utiliza para los esquemas `s3` y `s3n`.

   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",
         "fs.s3a.endpoint.region": "us-west-2",
         "fs.s3a.change.detection.mode": "none",
         "fs.s3a.select.enabled": "false"
       }
     },
      {
       "Classification": "spark-defaults",
       "Properties": {
         "spark.hadoop.fs.s3a.aws.credentials.provider": "software.amazon.awssdk.auth.credentials.WebIdentityTokenFileCredentialsProvider",
         "spark.sql.sources.fastS3PartitionDiscovery.enabled": "false"
       }
     }
   ]
   ```

1. 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"
   ```