Verwenden von Batch Operations mit Verzeichnis-Buckets. - Amazon Simple Storage Service

Verwenden von Batch Operations mit Verzeichnis-Buckets.

Sie können Amazon S3 Batch Operations verwenden, um umfangreiche Vorgänge für in S3 gespeicherte Objekte durchzuführen. Weitere Informationen zu S3 Batch Operations finden Sie unter Durchführen umfangreicher Stapelvorgänge für Amazon-S3-Objekte.

Die folgenden Themen behandeln das Durchführen von Massenvorgängen an Objekten, die in der Speicherklasse S3 Express One Zone in Verzeichnis-Buckets gespeichert sind.

Verwenden von Batch Operations mit Verzeichnis-Buckets.

Sie können die Vorgänge Kopieren und AWS Lambda-Funktion aufrufen für Objekte ausführen, die in Verzeichnis-Buckets gespeichert sind. Mit Kopieren können Sie Objekte zwischen Buckets desselben Typs kopieren (z. B. von Verzeichnis-Bucket zu Verzeichnis-Bucket). Sie können auch zwischen Verzeichnis-Buckets und Allzweck-Buckets kopieren. Mit AWS Lambda-Funktion aufrufen können Sie eine Lambda-Funktion verwenden, um Aktionen für Objekte in Ihrem Verzeichnis-Bucket mit von Ihnen definiertem Code auszuführen.

Objekte kopieren

Sie können zwischen demselben Bucket-Typ oder zwischen Verzeichnis-Buckets und Allzweck-Buckets kopieren. Wenn Sie in einen Verzeichnis-Bucket kopieren, müssen Sie das korrekte Format für den Amazon-Ressourcennamen (ARN) für diesen Bucket-Typ verwenden. Das ARN-Format für einen Verzeichnis-Bucket ist arn:aws:s3express:region:account-id:bucket/bucket-base-name--x-s3.

Anmerkung

Das Kopieren von Objekten zwischen verschiedenen AWS-Regionen wird nicht unterstützt, wenn sich der Quell- oder Ziel-Bucket in einer AWS Local Zone befindet. Die Quell- und Ziel-Buckets müssen dieselbe übergeordnete AWS-Region haben. Die Quell- und Ziel-Buckets können unterschiedliche Bucket-Speicherorttypen haben (Availability Zone oder Local Zone).

Sie können Ihren Verzeichnis-Bucket auch mit Daten füllen, indem Sie die Aktion Import in der S3-Konsole verwenden. Import ist eine optimierte Methode zur Erstellung von Batch-Operations-Aufträgen zum Kopieren von Objekten aus Allzweck-Buckets in Verzeichnis-Buckets. Für Import-Kopieraufträge aus Allzweck-Buckets in Verzeichnis-Buckets generiert S3 automatisch ein Manifest. Weitere Informationen finden Sie unter Importieren von Objekten in einen Verzeichnis-Bucket. und Angeben eines Manifests.

Aufrufen von Lambda-Funktionen (LambdaInvoke)

Für die Verwendung von Batch Operations zum Aufrufen von Lambda-Funktionen, die auf Verzeichnis-Buckets wirken, gelten besondere Anforderungen. Beispielsweise müssen Sie Ihre Lambda-Anforderung mithilfe eines aktualisierten v2-JSON-Schemas strukturieren und InvocationSchemaVersion 2.0 angeben, wenn Sie den Auftrag erstellen. Weitere Informationen finden Sie unter Aufrufen von AWS Lambda-Funktionen.

Die wichtigsten Unterschiede:

Die folgende Liste enthält die wichtigsten Unterschiede, wenn Sie Batch Operations verwenden, um Massenvorgänge an Objekten durchzuführen, die in Verzeichnis-Buckets mit der Speicherklasse S3 Express One Zone gespeichert sind:

  • Für Verzeichnis-Buckets werden SSE-S3 und die serverseitige Verschlüsselung mit AWS Key Management Service (AWS KMS)-Schlüsseln (SSE-KMS) unterstützt. Wenn Sie eine CopyObject-Anforderung stellen, die die serverseitige Verschlüsselung mit vom Kunden bereitgestellten Schlüsseln (SSE-C) für einen Verzeichnis-Bucket (Quelle oder Ziel) festlegt, wird ein 400 (Bad Request)-HTTP-Fehler zurückgegeben.

    Wir empfehlen, dass die Standardverschlüsselung des Buckets die gewünschte Verschlüsselungskonfiguration verwendet und dass Sie die Standardverschlüsselung des Buckets in Ihren CreateSession-Anforderungen oder PUT-Objektanforderungen nicht überschreiben. Anschließend werden neue Objekte automatisch mit den gewünschten Verschlüsselungseinstellungen verschlüsselt. Weitere Informationen zum Überschreibungsverhalten der Verschlüsselung in Verzeichnis-Buckets und wie Sie neue Objektkopien in einem Verzeichnis-Bucket mit SSE-KMS verschlüsseln können, finden Sie unter Angeben der serverseitigen Verschlüsselung mit AWS KMS für neue Objekt-Uploads.

    S3 Bucket Keys werden nicht unterstützt, wenn Sie mit SSE-KMS verschlüsselte Objekte mithilfe der Copy-Operation in Batch Operations aus Allzweck-Buckets in Verzeichnis-Buckets, von Verzeichnis-Buckets in Allzweck-Buckets oder zwischen Verzeichnis-Buckets kopieren. In diesem Fall ruft Amazon S3 AWS KMS jedes Mal auf, wenn eine Kopieranforderung für ein mit KMS verschlüsseltes Objekt ausgeführt wird. Weitere Informationen zur Verwendung von SSE-KMS für Verzeichnis-Buckets finden Sie unter Einstellen und Überwachen der Standardverschlüsselung für Verzeichnis-Buckets und Verwenden serverseitiger Verschlüsselung mit AWS KMS -Schlüsseln (SSE-KMS) in Verzeichnis-Buckets.

  • Objekte in Verzeichnis-Buckets können nicht mit Tags markiert werden. Sie können nur einen leeren Tag-Satz angeben. Standardmäßig kopiert Batch Operations Tags. Wenn Sie ein Objekt mit Tags zwischen Allzweck-Buckets und Verzeichnis-Buckets kopieren, erhalten Sie eine 501 (Not Implemented)-Antwort.

  • S3 Express One Zone bietet Ihnen die Möglichkeit, den Prüfsummenalgorithmus auszuwählen, der zur Validierung Ihrer Daten beim Hoch- oder Herunterladen verwendet wird. Sie können einen der folgenden Secure Hash Algorithms (SHA)- oder Cyclic Redundancy Check (CRC)-Algorithmen zur Überprüfung der Datenintegrität auswählen: CRC32, SHA-1 und SHA-256. MD5-basierte Prüfsummen werden von der Speicherklasse S3 Express One Zone nicht unterstützt.

  • Standardmäßig setzen alle Amazon-S3-Buckets die Einstellung für das S3 Object Ownership auf „Bucket-Eigentümer erzwungen“ und Zugriffskontrolllisten (ACLs) sind deaktiviert. Für Verzeichnis-Buckets kann diese Einstellung nicht geändert werden. Sie können ein Objekt aus Allzweck-Buckets in Verzeichnis-Bucket kopieren. Sie können die Standard-ACL jedoch nicht überschreiben, wenn Sie in oder aus einem Verzeichnis-Bucket kopieren.

  • Unabhängig davon, wie Sie Ihr Manifest angeben, muss die Liste selbst in einem Allzweck-Bucket gespeichert werden. Batch Operations kann keine vorhandenen Manifeste aus Verzeichnis-Buckets importieren (oder generierte Manifeste in Verzeichnis-Buckets speichern). Im Manifest beschriebene Objekte können jedoch in Verzeichnis-Buckets gespeichert werden.

  • Batch Operations kann keinen Verzeichnis-Bucket als Speicherort in einem S3-Inventarbericht angeben. Inventarberichte unterstützen keine Verzeichnis-Buckets. Sie können eine Manifestdatei für Objekte in einem Verzeichnis-Bucket erstellen, indem Sie die API-Operation verwenden, um die Objekte aufzulisten. Sie können die Liste dann in eine CSV-Datei einfügen.

Gewähren von -Zugriff

Um Kopieraufträge durchzuführen müssen Sie über die folgenden Berechtigungen verfügen:

  • Um Objekte von einem Verzeichnis-Bucket zu einem anderen Verzeichnis-Bucket zu kopieren, benötigen Sie die s3express:CreateSession-Berechtigung.

  • Um Objekte aus Verzeichnis-Buckets zu Allzweck-Buckets zu kopieren, benötigen Sie die s3express:CreateSession-Berechtigung und s3:PutObject-Berechtigung zum Schreiben der Objektkopie in den Ziel-Bucket.

  • Um Objekte aus Allzweck-Buckets zu Verzeichnis-Buckets zu kopieren, benötigen Sie die s3express:CreateSession-Berechtigung und s3:GetObject-Berechtigung zum Lesen des zu kopierenden Quell-Objekts.

    Weitere Informationen finden Sie unter CopyObject in der API-Referenz zu Amazon Simple Storage Service.

  • Um eine Lambda-Funktion aufzurufen, müssen Sie Ihrer Ressource basierend auf Ihrer Lambda-Funktion Berechtigungen erteilen. Um festzustellen, welche Berechtigungen erforderlich sind, überprüfen Sie die entsprechenden API-Operationen.