ItemReader - AWS Step Functions

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.

ItemReader

DerItemReaderFeld ist ein JSON-Objekt, das einen Datensatz und seinen Speicherort angibt. EINStatus der verteilten Karteverwendet diesen Datensatz als Eingabe. Das folgende Beispiel zeigt die Syntax vonItemReaderFeld, wenn Ihr Datensatz eine CSV-Datei ist, die in einem Amazon S3 S3-Bucket gespeichert ist.

"ItemReader": { "ReaderConfig": { "InputType": "CSV", "CSVHeaderLocation": "FIRST_ROW" }, "Resource": "arn:aws:states:::s3:getObject", "Parameters": { "Bucket": "myBucket", "Key": "csvDataset/ratings.csv" } }
Tipp

In Workflow Studio geben Sie den Datensatz und seinen Speicherort imQuelle des ArtikelsFeld.

Inhalt des ItemReader Feld

Abhängig von Ihrem Datensatz ist der Inhalt desItemReaderFeld variiert. Wenn es sich bei Ihrem Datensatz beispielsweise um ein JSON-Array handelt, das aus einem vorherigen Schritt im Workflow übergeben wurde,ItemReaderFeld wird weggelassen. Wenn es sich bei Ihrem Datensatz um eine Amazon S3 S3-Datenquelle handelt, enthält dieses Feld die folgenden Unterfelder.

ReaderConfig

Ein JSON-Objekt, das die folgenden Details spezifiziert:

  • InputType

    Gibt den Typ der Amazon S3 S3-Datenquelle an, z. B. CSV-Datei, Objekt, JSON-Datei oder eine Amazon S3 S3-Inventarliste. In Workflow Studio können Sie einen Eingabetyp aus derAmazon S3 S3-ArtikelquelleDrop-down-Liste unterQuelle des ArtikelsFeld.

  • CSVHeaderLocation

    Anmerkung

    Sie müssen dieses Feld nur angeben, wenn Sie eine CSV-Datei als Datensatz verwenden.

    Akzeptiert einen der folgenden Werte, um die Position der Spaltenüberschrift anzugeben:

    Wichtig

    Derzeit unterstützt Step Functions CSV-Header mit bis zu 10 KB.

    • FIRST_ROW— Verwenden Sie diese Option, wenn die erste Zeile der Datei der Header ist.

    • GIVEN— Verwenden Sie diese Option, um den Header innerhalb der State-Machine-Definition anzugeben. Wenn Ihre CSV-Datei beispielsweise die folgenden Daten enthält.

      1,307,3.5,1256677221 1,481,3.5,1256677456 1,1091,1.5,1256677471 ...

      Stellen Sie das folgende JSON-Array als CSV-Header bereit.

      "ItemReader": { "ReaderConfig": { "InputType": "CSV", "CSVHeaderLocation": "GIVEN", "CSVHeaders": [ "userId", "movieId", "rating", "timestamp" ] } }
    Tipp

    In Workflow Studio finden Sie diese Option unterZusätzliche Konfigurationin derQuelle des ArtikelsFeld.

  • MaxItems

    Beschränkt die Anzahl der übergebenen DatenelementeMapBundesstaat. Nehmen wir beispielsweise an, Sie stellen eine CSV-Datei bereit, die 1000 Zeilen enthält, und geben einen Grenzwert von 100 an. Dann hat der Interpreter den Test bestandennur100 Zeilen bis zumMapBundesstaat. DerMapstate verarbeitet Elemente in sequentieller Reihenfolge, beginnend nach der Kopfzeile.

    Standardmäßig ist derMapstate iteriert über alle Elemente im angegebenen Datensatz.

    Anmerkung

    Derzeit können Sie einen Grenzwert von bis zu 100.000.000 angeben. DerStatus der verteilten Kartebeendet das Lesen von Elementen, die diesen Grenzwert überschreiten.

    Tipp

    In Workflow Studio finden Sie diese Option unterZusätzliche Konfigurationin derQuelle des ArtikelsFeld.

    Sie können auch eine angebenReferenzpfadzu einem vorhandenen Schlüssel-Wert-Paar in IhremStatus der verteilten KarteEingabe. Dieser Pfad muss in eine positive Ganzzahl aufgelöst werden. Sie geben den Referenzpfad in derMaxItemsPathUnterfeld.

    Wichtig

    Sie können entwederMaxItemsoder dasMaxItemsPathUnterfeld, aber nicht beides.

Resource

Die Amazon S3 S3-API-Aktion, die Step Functions aufrufen muss, hängt vom angegebenen Datensatz ab.

Parameters

Ein JSON-Objekt, das den Amazon S3 S3-Bucket-Namen und den Objektschlüssel angibt, in dem der Datensatz gespeichert ist.

Wichtig

Stellen Sie sicher, dass sich Ihre Amazon S3 S3-Buckets unter demselben befindenAWS-KontoundAWS-Regionals Ihre Staatsmaschine.

Beispiele für Datensätze

Sie können eine der folgenden Optionen als Datensatz angeben:

Wichtig

Step Functions benötigt die entsprechenden Berechtigungen, um auf die Amazon S3 S3-Datensätze zuzugreifen, die Sie verwenden. Informationen über IAM-Richtlinien für die Datensätze finden Sie unterIAM-Richtlinien für Datensätze.

EINStatus der verteilten Kartekann JSON-Eingaben akzeptieren, die von einem vorherigen Schritt im Workflow übergeben wurden. Diese Eingabe muss entweder ein Array sein oder ein Array innerhalb eines bestimmten Knotens enthalten. Um einen Knoten auszuwählen, der das Array enthält, können Sie denItemsPathFeld.

Um einzelne Elemente im Array zu verarbeiten,Status der verteilten Kartestartet eine untergeordnete Workflow-Ausführung für jedes Array-Element. Die folgenden Registerkarten zeigen Beispiele für die Eingabe, die an die übergeben wurdeMapStatus und die entsprechende Eingabe für die Ausführung eines untergeordneten Workflows.

Anmerkung

Step Functions lässt das ausItemReaderFeld, wenn es sich bei Ihrem Datensatz um ein JSON-Array aus einem vorherigen Schritt handelt.

Input passed to the Map state

Betrachten Sie das folgende JSON-Array mit drei Elementen.

"facts": [ { "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }, { "verdict": "false", "statement_date": "6/7/2022", "statement_source": "television" }, { "verdict": "mostly-true", "statement_date": "5/18/2016", "statement_source": "news" } ]
Input passed to a child workflow execution

DasStatus der verteilten Kartestartet drei untergeordnete Workflow-Ausführungen. Jede Ausführung erhält ein Array-Element als Eingabe. Das folgende Beispiel zeigt die Eingabe, die von einer untergeordneten Workflow-Ausführung empfangen wurde.

{ "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }

EINStatus der verteilten Kartekann über die Objekte iterieren, die in einem Amazon S3 S3-Bucket gespeichert sind. Wenn die Workflow-Ausführung denMapstate, Step Functions ruft dieListObjectsV2API-Aktion, die ein Array der Amazon S3 S3-Objektmetadaten zurückgibt. In diesem Array enthält jedes Element Daten, wieETagundSchlüssel, für die im Bucket gespeicherten Daten.

Um einzelne Elemente im Array zu verarbeiten,Status der verteilten Kartestartet die Ausführung eines untergeordneten Workflows. Nehmen Sie beispielsweise an, dass Ihr Amazon S3 S3-Bucket 100 Bilder enthält. Dann kehrte das Array nach dem Aufrufen von zurückListObjectsV2Die API-Aktion enthält 100 Elemente. DieStatus der verteilten Kartestartet dann 100 untergeordnete Workflow-Ausführungen, um jedes Array-Element zu verarbeiten.

Anmerkung
  • Derzeit enthält Step Functions auch einen Eintrag für jeden Ordner, den Sie in einem bestimmten Amazon S3 S3-Bucket mithilfe der Amazon S3 S3-Konsole erstellen. Dies führt zu einer zusätzlichen untergeordneten Workflow-Ausführung, die vonStatus der verteilten Karte. Um zu vermeiden, dass für den Ordner eine zusätzliche untergeordnete Workflow-Ausführung erforderlich ist, empfehlen wir die Verwendung desAWS CLIum Ordner zu erstellen. Weitere Informationen finden Sie unterAmazon S3 S3-Befehle auf hoher Ebenein derAWS Command Line InterfaceBenutzerleitfaden.

  • Step Functions benötigt die entsprechenden Berechtigungen, um auf die Amazon S3 S3-Datensätze zuzugreifen, die Sie verwenden. Informationen über IAM-Richtlinien für die Datensätze finden Sie unterIAM-Richtlinien für Datensätze.

Die folgenden Tabs zeigen Beispiele fürItemReaderFeldsyntax und die Eingabe, die an die Ausführung eines untergeordneten Workflows für diesen Datensatz übergeben wurde.

ItemReader syntax

In diesem Beispiel haben Sie Ihre Daten, zu denen Bilder, JSON-Dateien und Objekte gehören, in einem Präfix mit dem Namen organisiertprocessDatain einem Amazon S3 S3-Bucket mit dem NamenmyBucket.

"ItemReader": { "Resource": "arn:aws:states:::s3:listObjectsV2", "Parameters": { "Bucket": "myBucket", "Prefix": "processData" } }
Input passed to a child workflow execution

DasStatus der verteilten Kartestartet so viele untergeordnete Workflow-Ausführungen wie die Anzahl der im Amazon S3 S3-Bucket vorhandenen Elemente. Das folgende Beispiel zeigt die Eingabe, die von einer untergeordneten Workflow-Ausführung empfangen wurde.

{ "Etag": "\"05704fbdccb224cb01c59005bebbad28\"", "Key": "processData/images/n02085620_1073.jpg", "LastModified": 1668699881, "Size": 34910, "StorageClass": "STANDARD" }

EINStatus der verteilten Kartekann eine JSON-Datei, die in einem Amazon S3 S3-Bucket gespeichert ist, als Datensatz akzeptieren. Die JSON-Datei muss ein Array enthalten.

Wenn die Workflow-Ausführung denMapstate, Step Functions ruft dieGetObjectAPI-Aktion zum Abrufen der angegebenen JSON-Datei. DieMapDer Status iteriert dann über jedes Element im Array und startet für jedes Element eine untergeordnete Workflow-Ausführung. Wenn Ihre JSON-Datei beispielsweise 1000 Array-Elemente enthält,Mapstate startet 1000 untergeordnete Workflow-Ausführungen.

Anmerkung
  • Die Ausführungseingabe, die verwendet wird, um die Ausführung eines untergeordneten Workflows zu starten, darf 256 KB nicht überschreiten. Step Functions unterstützt jedoch das Lesen eines Elements mit einer Größe von bis zu 8 MB aus einer CSV- oder JSON-Datei, wenn Sie dann das optionaleItemSelectorFeld, um die Größe des Elements zu reduzieren.

  • Derzeit unterstützt Step Functions 10 GB als maximale Größe einer einzelnen Datei in einem Amazon S3 S3-Inventarbericht. Step Functions kann jedoch mehr als 10 GB verarbeiten, wenn jede einzelne Datei weniger als 10 GB groß ist.

  • Step Functions benötigt die entsprechenden Berechtigungen, um auf die Amazon S3 S3-Datensätze zuzugreifen, die Sie verwenden. Informationen über IAM-Richtlinien für die Datensätze finden Sie unterIAM-Richtlinien für Datensätze.

Die folgenden Tabs zeigen Beispiele fürItemReaderFeldsyntax und die Eingabe, die an die Ausführung eines untergeordneten Workflows für diesen Datensatz übergeben wurde.

Stellen Sie sich für dieses Beispiel vor, Sie haben eine JSON-Datei mit dem Namenfactcheck.json. Sie haben diese Datei in einem Präfix mit dem Namen gespeichertjsonDatasetin einem Amazon S3 S3-Bucket. Das Folgende ist ein Beispiel für den JSON-Datensatz.

[ { "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }, { "verdict": "false", "statement_date": "6/7/2022", "statement_source": "television" }, { "verdict": "mostly-true", "statement_date": "5/18/2016", "statement_source": "news" }, ... ]
ItemReader syntax
"ItemReader": { "Resource": "arn:aws:states:::s3:getObject", "ReaderConfig": { "InputType": "JSON" }, "Parameters": { "Bucket": "myBucket", "Key": "jsonDataset/factcheck.json" } }
Input to a child workflow execution

DerStatus der verteilten Kartestartet so viele untergeordnete Workflow-Ausführungen wie die Anzahl der in der JSON-Datei vorhandenen Array-Elemente. Das folgende Beispiel zeigt die Eingabe, die von einer untergeordneten Workflow-Ausführung empfangen wurde.

{ "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }

EINStatus der verteilten Kartekann eine CSV-Datei, die in einem Amazon S3 S3-Bucket gespeichert ist, als Datensatz akzeptieren. Wenn Sie eine CSV-Datei als Datensatz verwenden, müssen Sie eine CSV-Spaltenüberschrift angeben. Informationen zum Angeben eines CSV-Headers finden Sie unterInhalt des ItemReader Feld.

Da es kein standardisiertes Format zum Erstellen und Verwalten von Daten in CSV-Dateien gibt, analysiert Step Functions CSV-Dateien auf der Grundlage der folgenden Regeln:

  • Kommas (,) sind ein Trennzeichen, das einzelne Felder voneinander trennt.

  • Zeilenumbrüche sind ein Trennzeichen, das einzelne Datensätze voneinander trennt.

  • Felder werden als Zeichenketten behandelt. Verwenden Sie für Datentypkonvertierungen denStates.StringToJsonintrinsische Funktion inItemSelector.

  • Um Zeichenketten einzuschließen, sind keine doppelten Anführungszeichen (“ „) erforderlich. Zeichenketten, die in doppelte Anführungszeichen eingeschlossen sind, können jedoch Kommas und Zeilenumbrüche enthalten, ohne dass sie als Trennzeichen dienen.

  • Vermeiden Sie doppelte Anführungszeichen, indem Sie sie wiederholen.

  • Wenn die Anzahl der Felder in einer Zeile geringer ist als die Anzahl der Felder in der Kopfzeile, stellt Step Functions leere Zeichenketten für die fehlenden Werte bereit.

  • Wenn die Anzahl der Felder in einer Zeile größer ist als die Anzahl der Felder in der Kopfzeile, überspringt Step Functions die zusätzlichen Felder.

Weitere Informationen darüber, wie Step Functions eine CSV-Datei analysiert, finden Sie unterExample of parsing an input CSV file.

Wenn die Workflow-Ausführung denMapstate, Step Functions ruft dieGetObjectAPI-Aktion zum Abrufen der angegebenen CSV-Datei. DieMapDer Status iteriert dann über jede Zeile in der CSV-Datei und startet eine untergeordnete Workflow-Ausführung, um die Elemente in jeder Zeile zu verarbeiten. Angenommen, Sie stellen eine CSV-Datei bereit, die 100 Zeilen als Eingabe enthält. Dann übergibt der Interpreter jede Zeile anMapBundesstaat. DerMapstate verarbeitet Elemente in serieller Reihenfolge, beginnend nach der Kopfzeile.

Anmerkung
  • Die Ausführungseingabe, die verwendet wird, um die Ausführung eines untergeordneten Workflows zu starten, darf 256 KB nicht überschreiten. Step Functions unterstützt jedoch das Lesen eines Elements mit einer Größe von bis zu 8 MB aus einer CSV- oder JSON-Datei, wenn Sie dann das optionaleItemSelectorFeld, um die Größe des Elements zu reduzieren.

  • Derzeit unterstützt Step Functions 10 GB als maximale Größe einer einzelnen Datei in einem Amazon S3 S3-Inventarbericht. Step Functions kann jedoch mehr als 10 GB verarbeiten, wenn jede einzelne Datei weniger als 10 GB groß ist.

  • Step Functions benötigt die entsprechenden Berechtigungen, um auf die Amazon S3 S3-Datensätze zuzugreifen, die Sie verwenden. Informationen über IAM-Richtlinien für die Datensätze finden Sie unterIAM-Richtlinien für Datensätze.

Die folgenden Tabs zeigen Beispiele fürItemReaderFeldsyntax und die Eingabe, die an die Ausführung eines untergeordneten Workflows für diesen Datensatz übergeben wurde.

ItemReader syntax

Angenommen, Sie haben über eine CSV-Datei mit dem Namenratings.csv. Dann haben Sie diese Datei in einem Präfix gespeichert, das benannt istcsvDatasetin einem Amazon S3 S3-Bucket.

{ "ItemReader": { "ReaderConfig": { "InputType": "CSV", "CSVHeaderLocation": "FIRST_ROW" }, "Resource": "arn:aws:states:::s3:getObject", "Parameters": { "Bucket": "myBucket", "Key": "csvDataset/ratings.csv" } } }
Input to a child workflow execution

DieStatus der verteilten Kartestartet so viele untergeordnete Workflow-Ausführungen wie die Anzahl der Zeilen, die in der CSV-Datei vorhanden sind, mit Ausnahme der Kopfzeile, falls in der Datei vorhanden. Das folgende Beispiel zeigt die Eingabe, die von einer untergeordneten Workflow-Ausführung empfangen wurde.

{ "rating": "3.5", "movieId": "307", "userId": "1", "timestamp": "1256677221" }

EINStatus der verteilten Kartekann eine Amazon S3 S3-Inventarmanifestdatei, die in einem Amazon S3 S3-Bucket gespeichert ist, als Datensatz akzeptieren.

Wenn die Workflow-Ausführung denMapstate, Step Functions ruft dieGetObjectAPI-Aktion zum Abrufen der angegebenen Amazon S3 S3-Inventarmanifestdatei. DieMapstate iteriert dann über die Objekte im Inventar, um ein Array von Amazon S3 S3-Inventarobjekt-Metadaten zurückzugeben.

Anmerkung
  • Derzeit unterstützt Step Functions 10 GB als maximale Größe einer einzelnen Datei in einem Amazon S3 S3-Inventarbericht. Step Functions kann jedoch mehr als 10 GB verarbeiten, wenn jede einzelne Datei weniger als 10 GB groß ist.

  • Step Functions benötigt die entsprechenden Berechtigungen, um auf die Amazon S3 S3-Datensätze zuzugreifen, die Sie verwenden. Informationen über IAM-Richtlinien für die Datensätze finden Sie unterIAM-Richtlinien für Datensätze.

Das Folgende ist ein Beispiel für eine Inventardatei im CSV-Format. Diese Datei enthält die benannten ObjektecsvDatasetundimageDataset, die in einem Amazon S3 S3-Bucket mit dem Namen gespeichert sindsourceBucket.

"sourceBucket","csvDataset/","0","2022-11-16T00:27:19.000Z" "sourceBucket","csvDataset/titles.csv","3399671","2022-11-16T00:29:32.000Z" "sourceBucket","imageDataset/","0","2022-11-15T20:00:44.000Z" "sourceBucket","imageDataset/n02085620_10074.jpg","27034","2022-11-15T20:02:16.000Z" ...
Wichtig

Derzeit unterstützt Step Functions keinen benutzerdefinierten Amazon S3 S3-Inventarbericht als Datensatz. Sie müssen auch sicherstellen, dass das Ausgabeformat Ihres Amazon S3 S3-Inventarberichts CSV ist. Weitere Informationen zu Amazon S3 S3-Inventaren und deren Einrichtung finden Sie unterAmazon S3 Inventoryin derAmazon-S3-Benutzerhandbuch.

Das folgende Beispiel für eine Inventar-Manifestdatei zeigt die CSV-Header für die Metadaten des Inventarobjekts.

{ "sourceBucket" : "sourceBucket", "destinationBucket" : "arn:aws:s3:::inventory", "version" : "2016-11-30", "creationTimestamp" : "1668560400000", "fileFormat" : "CSV", "fileSchema" : "Bucket, Key, Size, LastModifiedDate", "files" : [ { "key" : "source-bucket/destination-prefix/data/20e55de8-9c21-45d4-99b9-46c732000228.csv.gz", "size" : 7300, "MD5checksum" : "a7ff4a1d4164c3cd55851055ec8f6b20" } ] }

Die folgenden Registerkarten zeigen Beispiele fürItemReaderFeldsyntax und die Eingabe, die an die Ausführung eines untergeordneten Workflows für diesen Datensatz übergeben wurde.

ItemReader syntax
{ "ItemReader": { "ReaderConfig": { "InputType": "MANIFEST" }, "Resource": "arn:aws:states:::s3:getObject", "Parameters": { "Bucket": "destinationBucket", "Key": "destination-prefix/source-bucket/config-ID/YYYY-MM-DDTHH-MMZ/manifest.json" } } }
Input to a child workflow execution
{ "LastModifiedDate": "2022-11-16T00:29:32.000Z", "Bucket": "sourceBucket", "Size": "3399671", "Key": "csvDataset/titles.csv" }

Abhängig von den Feldern, die Sie bei der Konfiguration des Amazon S3-Inventarberichts ausgewählt haben, ist der Inhalt Ihresmanifest.jsonDie Datei kann vom gezeigten Beispiel abweichen.

IAM-Richtlinien für Datensätze

Wenn Sie Workflows mit der Step Functions-Konsole erstellen, kann Step Functions automatisch IAM-Richtlinien auf der Grundlage der Ressourcen in Ihrer Workflow-Definition generieren. Diese Richtlinien beinhalten die geringsten Rechte, die erforderlich sind, damit die State-Machine-Rolle folgende Funktionen aufrufen kannStartExecutionAPI-Aktion fürStatus der verteilten Karte. Diese Richtlinien beinhalten auch die geringsten Rechte, die für den Zugriff auf Step Functions erforderlich sind.AWSRessourcen, wie Amazon S3-Bucket und -Objekte sowie Lambda-Funktionen. Wir empfehlen dringend, dass Sie nur die Berechtigungen in Ihre IAM-Richtlinien aufnehmen, die erforderlich sind. Zum Beispiel, wenn Ihr Workflow Folgendes beinhaltetMapGeben Sie im Modus Verteilt an, beschränken Sie Ihre Richtlinien auf den spezifischen Amazon S3 S3-Bucket und -Ordner, der Ihren Datensatz enthält.

Wichtig

Wenn Sie einen Amazon S3 S3-Bucket und ein Objekt oder ein Präfix mit einem angebenReferenzpfadzu einem vorhandenen Schlüssel-Wert-Paar in IhremStatus der verteilten KarteEingabe, stellen Sie die IAM-Richtlinie für Ihren Workflow sicher. Beschränken Sie die Richtlinien auf die Bucket- und Objektnamen, zu denen der Pfad zur Laufzeit aufgelöst wird.

Die folgenden Beispiele für IAM-Richtlinien gewähren die geringsten Rechte, die für den Zugriff auf Ihre Amazon S3 S3-Datensätze erforderlich sind, indem SieListObjectsV2undGetObjectAPI-Aktionen.

Beispiel IAM-Richtlinie für Amazon S3 S3-Objekt als Datensatz

Das folgende Beispiel zeigt eine IAM-Richtlinie, die die geringsten Rechte für den Zugriff auf die darin organisierten Objekte gewährtprocessImagesin einem Amazon S3 S3-Bucket mit dem NamenmyBucket.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::myBucket" ], "Condition": { "StringLike": { "s3:prefix": [ "processImages" ] } } } ] }
Beispiel IAM-Richtlinie für eine CSV-Datei als Datensatz

Das folgende Beispiel zeigt eine IAM-Richtlinie, die die geringsten Rechte für den Zugriff auf eine CSV-Datei gewährtratings.csv.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::myBucket/csvDataset/ratings.csv" ] } ] }
Beispiel IAM-Richtlinie für ein Amazon S3 S3-Inventar als Datensatz

Das folgende Beispiel zeigt eine IAM-Richtlinie, die die geringsten Rechte für den Zugriff auf einen Amazon S3 S3-Inventarbericht gewährt.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::destination-prefix/source-bucket/config-ID/YYYY-MM-DDTHH-MMZ/manifest.json", "arn:aws:s3:::destination-prefix/source-bucket/config-ID/data/*" ] } ] }