

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Lesen, Schreiben und Hochladen von Daten in Amazon S3 Express One Zone mit Amazon EMR auf EKS
<a name="upload-data-s3-express"></a>

Mit den Amazon EMR-Versionen 7.2.0 und höher können Sie Amazon EMR auf EKS mit der [Amazon S3 Express One Zone-Speicherklasse](https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-one-zone.html) verwenden, um die Leistung bei der Ausführung von Jobs und Workloads zu verbessern. S3 Express One Zone ist eine leistungsstarke Amazon S3 S3-Speicherklasse mit einer Zone, die für die meisten latenzempfindlichen Anwendungen einen konsistenten Datenzugriff im einstelligen Millisekundenbereich bietet. Zum Zeitpunkt seiner Veröffentlichung bietet S3 Express One Zone den Cloud-Objektspeicher mit der niedrigsten Latenz und der höchsten Leistung in Amazon S3.

## Voraussetzungen
<a name="upload-data-s3-express-prereqs"></a>

Bevor Sie S3 Express One Zone mit Amazon EMR auf EKS verwenden können, müssen Sie die folgenden Voraussetzungen erfüllen:
+ Die [Einrichtung von Amazon EMR auf EKS wurde abgeschlossen](https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/setting-up.html).
+ Nachdem Sie Amazon EMR auf EKS eingerichtet haben, [erstellen Sie einen virtuellen Cluster](https://docs.aws.amazon.com/emr/latest/EMR-on-EKS-DevelopmentGuide/virtual-cluster.html#create-virtul-cluster).

## Erste Schritte mit S3 Express One Zone
<a name="upload-data-s3-express-getting-started"></a>

Folgen Sie diesen Schritten, um mit S3 Express One Zone zu beginnen

1. Fügen Sie die `CreateSession` Berechtigung zu Ihrer Jobausführungsrolle hinzu. Wenn S3 Express One Zone anfänglich eine Aktion wie `GET``LIST`, oder `PUT` an einem S3-Objekt ausführt, ruft die Speicherklasse in Ihrem Namen `CreateSession` auf. Im Folgenden finden Sie ein Beispiel dafür, wie Sie die `CreateSession` Genehmigung erteilen können.

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

****  

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

------

1. Sie müssen den Apache Hadoop Connector S3A verwenden, um auf die S3 Express-Buckets zuzugreifen, also ändern Sie Ihren Amazon S3 so, dass er das `s3a` Schema URIs für die Verwendung des Connectors verwendet. Wenn sie das Schema nicht verwenden, können Sie die Dateisystemimplementierung, die Sie für und die Schemas verwenden, ändern. `s3` `s3n`

   Um das `s3`-Schema zu ändern, geben Sie die folgenden Clusterkonfigurationen an:

   ```
   [
     {
       "Classification": "core-site",
       "Properties": {
         "fs.s3.impl": "org.apache.hadoop.fs.s3a.S3AFileSystem",
         "fs.AbstractFileSystem.s3.impl": "org.apache.hadoop.fs.s3a.S3A"
       }
     }
   ]
   ```

   Um das s3n-Schema zu ändern, geben Sie die folgenden Clusterkonfigurationen an:

   ```
   [
     {
       "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. Verwenden Sie in Ihrer Spark-Submit-Konfiguration den Web Identity Credential Provider.

   ```
   "spark.hadoop.fs.s3a.aws.credentials.provider=com.amazonaws.auth.WebIdentityTokenCredentialsProvider"
   ```