Zustandsverarbeitungsmodi zuordnen - 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.

Zustandsverarbeitungsmodi zuordnen

Step Functions bietet die folgenden Verarbeitungsmodi für den Map Status, je nachdem, wie Sie die Elemente in einem Datensatz verarbeiten möchten.

  • Inline — Modus mit begrenzter Parallelität. In diesem Modus wird jede Iteration des Map Status im Kontext des Workflows ausgeführt, der den Status enthält. Map Step Functions fügt die Ausführungshistorie dieser Iterationen zur Ausführungshistorie des übergeordneten Workflows hinzu. Standardmäßig werden Map Staaten im Inline-Modus ausgeführt.

    In diesem Modus akzeptiert der Map Status nur ein JSON-Array als Eingabe. Außerdem unterstützt dieser Modus bis zu 40 gleichzeitige Iterationen.

    Weitere Informationen finden Sie unter Verwenden des Kartenstatus im Inline-Modus.

  • Verteilt — Modus mit hoher Parallelität. In diesem Modus führt der Map Status jede Iteration als untergeordnete Workflow-Ausführung aus, wodurch eine hohe Parallelität von bis zu 10.000 parallel untergeordneten Workflow-Ausführungen ermöglicht wird. Jede untergeordnete Workflow-Ausführung hat ihren eigenen Ausführungsverlauf, der von dem des übergeordneten Workflows getrennt ist.

    In diesem Modus kann der Map Staat entweder ein JSON-Array oder eine Amazon S3 S3-Datenquelle, z. B. eine CSV-Datei, als Eingabe akzeptieren.

    Weitere Informationen finden Sie unter Verwenden von Map State im verteilten Modus.

Welchen Modus Sie verwenden sollten, hängt davon ab, wie Sie die Elemente in einem Datensatz verarbeiten möchten. Verwenden Sie den Map Status im Inline-Modus, wenn der Ausführungsverlauf Ihres Workflows 25.000 Einträge nicht überschreitet oder wenn Sie nicht mehr als 40 gleichzeitige Iterationen benötigen.

Verwenden Sie den Map Status im Modus Verteilt, wenn Sie umfangreiche parallel Workloads orchestrieren müssen, die eine beliebige Kombination der folgenden Bedingungen erfüllen:

  • Die Größe Ihres Datensatzes übersteigt 256 KB.

  • Der Verlauf der Ausführungsereignisse des Workflows umfasst mehr als 25.000 Einträge.

  • Sie benötigen eine Parallelität von mehr als 40 parallel Iterationen.

Unterschiede im Inline-Modus und im verteilten Modus

In der folgenden Tabelle werden die Unterschiede zwischen den Modi Inline und Distributed hervorgehoben.

Inline-Modus Verteilter Modus
Supported data sources

Akzeptiert ein JSON-Array, das aus einem vorherigen Schritt im Workflow als Eingabe übergeben wurde.

Akzeptiert die folgenden Datenquellen als Eingabe:

  • JSON-Array, das aus einem vorherigen Schritt im Workflow übergeben wurde

  • JSON-Datei in einem Amazon S3 S3-Bucket, der ein Array enthält

  • CSV-Datei in einem Amazon S3 S3-Bucket

  • Amazon S3 S3-Objektliste

  • Amazon S3 Inventory

Map iterations

In diesem Modus wird jede Iteration des Map Status im Kontext des Workflows ausgeführt, der den Map Status enthält. Step Functions fügt die Ausführungshistorie dieser Iterationen zur Ausführungshistorie des übergeordneten Workflows hinzu.

In diesem Modus führt der Map Status jede Iteration als untergeordnete Workflow-Ausführung aus, wodurch eine hohe Parallelität von bis zu 10.000 parallel untergeordneten Workflow-Ausführungen ermöglicht wird. Jede untergeordnete Workflow-Ausführung hat ihren eigenen Ausführungsverlauf, der von dem des übergeordneten Workflows getrennt ist.

Maximum concurrency for parallel iterations

Ermöglicht es Ihnen, bis zu 40 Iterationen so gleichzeitig wie möglich auszuführen.

Ermöglicht die Ausführung von bis zu 10.000 parallel untergeordneten Workflow-Ausführungen, um Millionen von Datenelementen gleichzeitig zu verarbeiten.

Input payload and event history sizes

Erzwingt ein Limit von 256 KB für die Größe der Eingabe-Payload und 25.000 Einträge im Verlauf der Ausführungsereignisse.

Ermöglicht es Ihnen, die Beschränkung der Nutzlastgröße zu umgehen, da der Map Status Eingaben direkt aus Amazon S3 S3-Datenquellen lesen kann.

In diesem Modus können Sie auch Einschränkungen im Ausführungsverlauf umgehen, da die vom Map Status gestarteten untergeordneten Workflow-Ausführungen ihre eigenen, vom Ausführungsverlauf des übergeordneten Workflows getrennten Ausführungshistorien beibehalten.

Monitoring and observability

Sie können den Ausführungsverlauf des Workflows von der Konsole aus oder durch Aufrufen der GetExecutionHistory API-Aktion überprüfen.

Sie können den Ausführungsverlauf auch über CloudWatch X-Ray einsehen.

Wenn Sie einen Map Status im verteilten Modus ausführen, erstellt Step Functions eine Map Run-Ressource. Ein Map Run bezieht sich auf eine Reihe von untergeordneten Workflow-Ausführungen, die im Status „Distributed Map“ gestartet werden. Sie können einen Map Run in der Step Functions-Konsole anzeigen. Sie können die DescribeMapRun API-Aktion auch aufrufen. Ein Map Run sendet auch Metriken an. CloudWatch

Weitere Informationen finden Sie unter Untersuchen der Map-Ausführung einer Ausführung des verteilten Map-Zustands.