Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

ItemBatcher (Karte)

Fokusmodus
ItemBatcher (Karte) - 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.

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.

Status verwalten und Daten transformieren

Das ItemBatcher Feld ist ein JSON-Objekt, das angibt, dass eine Gruppe von Elementen in einer einzelnen untergeordneten Workflow-Ausführung verarbeitet werden soll. Verwenden Sie Batching, wenn Sie große CSV-Dateien oder JSON-Arrays oder große Gruppen von Amazon S3 S3-Objekten verarbeiten.

Das folgende Beispiel zeigt die Syntax des ItemBatcher Felds. In der folgenden Syntax ist die maximale Anzahl von Elementen, die jede untergeordnete Workflow-Ausführung verarbeiten sollte, auf 100 festgelegt.

{ "ItemBatcher": { "MaxItemsPerBatch": 100 } }

Standardmäßig wird jedes Element in einer Datenmenge als Eingabe an einzelne untergeordnete Workflow-Ausführungen übergeben. Nehmen wir beispielsweise an, Sie geben eine JSON-Datei als Eingabe an, die das folgende Array enthält:

[ { "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }, { "verdict": "false", "statement_date": "6/7/2022", "statement_source": "television" }, { "verdict": "true", "statement_date": "5/18/2016", "statement_source": "news" }, ... ]

Für die angegebene Eingabe erhält jede untergeordnete Workflow-Ausführung ein Array-Element als Eingabe. Das folgende Beispiel zeigt die Eingabe einer untergeordneten Workflow-Ausführung:

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

Um die Leistung und die Kosten Ihres Verarbeitungsauftrags zu optimieren, wählen Sie eine Stapelgröße, bei der die Anzahl der Artikel gegen die Verarbeitungszeit der Artikel abgewogen wird. Wenn Sie Batching verwenden, fügt Step Functions die Elemente einem Items-Array hinzu. Anschließend wird das Array als Eingabe an jede untergeordnete Workflow-Ausführung übergeben. Das folgende Beispiel zeigt einen Stapel von zwei Elementen, die als Eingabe an eine untergeordnete Workflow-Ausführung übergeben wurden:

{ "Items": [ { "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }, { "verdict": "false", "statement_date": "6/7/2022", "statement_source": "television" } ] }
Tipp

Weitere Informationen zur Verwendung des ItemBatcher Felds in Ihren Workflows finden Sie in den folgenden Tutorials und Workshops:

Felder zur Angabe der Artikelstapelung

Um Artikel zu stapeln, geben Sie die maximale Anzahl der zu stapelnden Artikel, die maximale Chargengröße oder beides an. Sie müssen einen dieser Werte angeben, um Artikel zu stapeln.

Max. Anzahl Artikel pro Stapel

Gibt die maximale Anzahl von Elementen an, die jede untergeordnete Workflow-Ausführung verarbeitet. Der Interpreter begrenzt die Anzahl der im Items Array gebündelten Elemente auf diesen Wert. Wenn Sie sowohl eine Chargennummer als auch eine Größe angeben, reduziert der Interpreter die Anzahl der Elemente in einem Stapel, um zu verhindern, dass die angegebene Stapelgrößenbeschränkung überschritten wird.

Wenn Sie diesen Wert nicht angeben, sondern einen Wert für die maximale Batchgröße angeben, verarbeitet Step Functions in jeder untergeordneten Workflow-Ausführung so viele Elemente wie möglich, ohne die maximale Batchgröße in Byte zu überschreiten.

Stellen Sie sich beispielsweise vor, Sie führen eine Ausführung mit einer JSON-Eingabedatei aus, die 1130 Knoten enthält. Wenn Sie für jeden Stapel einen maximalen Artikelwert von 100 angeben, erstellt Step Functions 12 Stapel. Davon enthalten 11 Stapel jeweils 100 Artikel, während der zwölfte Stapel die restlichen 30 Artikel enthält.

Alternativ können Sie die maximale Anzahl von Elementen für jeden Stapel als Referenzpfad zu einem vorhandenen Schlüssel-Wert-Paar in Ihrer Statuseingabe für Distributed Map angeben. Dieser Pfad muss in eine positive Ganzzahl aufgelöst werden.

Beispielsweise angesichts der folgenden Eingabe:

{ "maxBatchItems": 500 }

Sie können die maximale Anzahl der zu stapelnden Elemente mithilfe eines Referenzpfads (JSONPath nur) wie folgt angeben:

{ ... "Map": { "Type": "Map", "MaxConcurrency": 2000, "ItemBatcher": { "MaxItemsPerBatchPath": "$.maxBatchItems" } ... ... } }

Für JSONatabasierte Zustände können Sie auch einen JSONata Ausdruck angeben, der eine positive Ganzzahl ergibt.

Wichtig

Sie können entweder das MaxItemsPerBatch oder das MaxItemsPerBatchPath (JSONPath only) Unterfeld angeben, aber nicht beide.

Max. KiB pro Stapel

Gibt die maximale Größe eines Stapels in Byte an, bis zu 256 KiB. Wenn Sie sowohl eine maximale Chargennummer als auch eine maximale Stapelgröße angeben, reduziert Step Functions die Anzahl der Artikel in einem Stapel, um zu verhindern, dass die angegebene Stapelgrößenbeschränkung überschritten wird.

Alternativ können Sie die maximale Batchgröße als Referenzpfad zu einem vorhandenen Schlüssel-Wert-Paar in Ihrer Distributed Map-Statuseingabe angeben. Dieser Pfad muss in eine positive Ganzzahl aufgelöst werden.

Anmerkung

Wenn Sie Batching verwenden und keine maximale Batchgröße angeben, verarbeitet der Interpreter so viele Elemente, wie er verarbeiten kann, bis zu 256 KiB in jeder untergeordneten Workflow-Ausführung.

Beispielsweise angesichts der folgenden Eingabe:

{ "batchSize": 131072 }

Sie können die maximale Batchgröße mithilfe eines Referenzpfads wie folgt angeben:

{ ... "Map": { "Type": "Map", "MaxConcurrency": 2000, "ItemBatcher": { "MaxInputBytesPerBatchPath": "$.batchSize" } ... ... } }

Für JSONatabasierte Zustände können Sie auch einen JSONata Ausdruck angeben, der eine positive Ganzzahl ergibt.

Wichtig

Sie können entweder das MaxInputBytesPerBatch oder das MaxInputBytesPerBatchPath (JSONPath einzige) Unterfeld angeben, aber nicht beide.

Batch-Eingabe

Optional können Sie auch eine feste JSON-Eingabe angeben, die in jeden Batch aufgenommen werden soll, der an jede untergeordnete Workflow-Ausführung übergeben wird. Step Functions führt diese Eingabe mit der Eingabe für jede einzelne untergeordnete Workflow-Ausführung zusammen. Nehmen wir zum Beispiel die folgende feste Eingabe eines Datums der Faktenprüfung für eine Reihe von Elementen an:

"ItemBatcher": { "BatchInput": { "factCheck": "December 2022" } }

Jede untergeordnete Workflow-Ausführung erhält Folgendes als Eingabe:

{ "BatchInput": { "factCheck": "December 2022" }, "Items": [ { "verdict": "true", "statement_date": "6/11/2008", "statement_source": "speech" }, { "verdict": "false", "statement_date": "6/7/2022", "statement_source": "television" }, ... ] }

Bei JSONatabasierten Zuständen können Sie JSONata Ausdrücke direkt für JSON-Objekte oder -Arrays bereitstellen oder JSONata Ausdrücke innerhalb von JSON-Objekten oder -Arrays verwenden. BatchInput

Auf dieser Seite

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.