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.
Daten in einem Amazon S3 S3-Bucket mit Distributed Map verarbeiten
Dieses Beispielprojekt zeigt, wie Sie den Status Distributed Map verwenden können, um umfangreiche Daten zu verarbeiten, beispielsweise historische Wetterdaten zu analysieren und die Wetterstation zu identifizieren, die jeden Monat die höchste Durchschnittstemperatur auf dem Planeten hat. Die Wetterdaten werden in über 12.000 CSV Dateien aufgezeichnet, die wiederum in einem Amazon S3 S3-Bucket gespeichert werden.
Dieses Beispielprojekt umfasst zwei Distributed Map-Status mit den Namen Distributed S3 copy NOA Data und IP rocessNOAAData. Verteilte S3-Kopie NOA Daten iterieren über die CSV Dateien in einem öffentlichen Amazon S3 S3-Bucket mit dem Namen noaa-gsod-pdsund kopiert sie in einen Amazon S3 S3-Bucket in Ihrem AWS-Konto. P rocessNOAAData iteriert über die kopierten Dateien und enthält eine Lambda-Funktion, die die Temperaturanalyse durchführt.
Das Beispielprojekt überprüft zunächst den Inhalt des Amazon S3 S3-Buckets mit einem Aufruf der ListObjectsAPIV2-Aktion. Basierend auf der Anzahl der Schlüssel, die als Antwort auf diesen Aufruf zurückgegeben wurden, trifft das Beispielprojekt eine der folgenden Entscheidungen:
-
Wenn die Anzahl der Schlüssel größer oder gleich 1 ist, wechselt das Projekt in den rocessNOAAData Status P. Dieser Distributed-Map-Status umfasst Lambda Funktion mit dem Namen TemperatureFunction, die nach der Wetterstation sucht, die in jedem Monat die höchste Durchschnittstemperatur hatte. Diese Funktion gibt ein Wörterbuch mit
year-month
dem Schlüssel und ein Wörterbuch zurück, das Informationen über die Wetterstation als Wert enthält. -
Wenn die Anzahl der zurückgegebenen Schlüssel 1 nicht überschreitet, listet der Status Verteilte NOA S3-Datenkopie alle Objekte aus dem öffentlichen Bucket auf noaa-gsod-pdsund kopiert die einzelnen Objekte iterativ in Batches von 100 in einen anderen Bucket in Ihrem Konto. Eine Inline-Map führt das iterative Kopieren der Objekte durch.
Nachdem alle Objekte kopiert wurden, wechselt das Projekt zur Verarbeitung der Wetterdaten in den rocessNOAADataP-Status.
Das Beispielprojekt geht schließlich in einen Reducer über Lambda Funktion, die eine endgültige Aggregation der von der TemperatureFunctionFunktion zurückgegebenen Ergebnisse durchführt und die Ergebnisse in eine Amazon DynamoDB Tabelle.
Mit Distributed Map können Sie bis zu 10.000 parallel untergeordnete Workflow-Ausführungen gleichzeitig ausführen. In diesem Beispielprojekt ist die maximale Parallelität von P rocessNOAAData Distributed Map auf 3000 festgelegt, wodurch sie auf 3000 parallel untergeordnete Workflow-Ausführungen begrenzt ist.
In diesem Beispielprojekt werden der Zustandsmaschine und die unterstützenden AWS Ressourcen erstellt und die zugehörigen Berechtigungen konfiguriert. IAM Erkunden Sie dieses Beispielprojekt, um mehr über die Verwendung von Distributed Map für die Orchestrierung umfangreicher, parallel Workloads zu erfahren, oder verwenden Sie es als Ausgangspunkt für Ihre eigenen Projekte.
Wichtig
Dieses Beispielprojekt ist nur in der Region USA Ost (Nord-Virginia) verfügbar.
Schritt 1: Erstellen Sie die Zustandsmaschine
-
Öffnen Sie die Step Functions Functions-Konsole
und wählen Sie Create State Machine. -
Suchen Sie die Startvorlage, mit der Sie arbeiten möchten, und wählen Sie sie aus. Wählen Sie Next (Weiter), um fortzufahren.
-
Wählen Sie Eine Demo ausführen, um eine schreibgeschützte Version und einen ready-to-deploy Workflow zu erstellen, oder wählen Sie „Darauf aufbauen“, um eine bearbeitbare Zustandsmaschinen-Definition zu erstellen, auf der Sie aufbauen und später bereitstellen können.
-
Wählen Sie Vorlage verwenden, um mit Ihrer Auswahl fortzufahren.
Die nächsten Schritte hängen von Ihrer vorherigen Auswahl ab:
-
Führen Sie eine Demo durch — Sie können den Status Machine überprüfen, bevor Sie ein schreibgeschütztes Projekt mit Ressourcen erstellen, die von AWS CloudFormation Ihnen bereitgestellt werden. AWS-Konto
Sie können sich die State-Machine-Definition ansehen. Wenn Sie bereit sind, wählen Sie Bereitstellen und Ausführen aus, um das Projekt bereitzustellen und die Ressourcen zu erstellen.
Die Bereitstellung kann bis zu 10 Minuten dauern, bis Ressourcen und Berechtigungen erstellt sind. Sie können den Stack-ID-Link verwenden, um den Fortschritt in zu überwachen AWS CloudFormation.
Nach Abschluss der Bereitstellung sollte Ihre neue Zustandsmaschine in der Konsole angezeigt werden.
-
Darauf aufbauen — Sie können die Workflow-Definition überprüfen und bearbeiten. Möglicherweise müssen Sie Werte für Platzhalter im Beispielprojekt festlegen, bevor Sie versuchen, Ihren benutzerdefinierten Workflow auszuführen.
Anmerkung
Für Dienste, die für Ihr Konto bereitgestellt werden, können Standardgebühren anfallen.
Schritt 2: Führen Sie die Zustandsmaschine aus
Wählen Sie auf der Seite State Machines Ihr Beispielprojekt aus.
Wählen Sie auf der Seite mit dem Beispielprojekt die Option Ausführung starten aus.
Gehen Sie im Dialogfeld Ausführung starten wie folgt vor:
-
(Optional) Geben Sie einen benutzerdefinierten Ausführungsnamen ein, um den generierten Standard zu überschreiben.
ASCIINichtnamen und Protokollierung
Step Functions akzeptiert Namen für Zustandsmaschinen, Ausführungen, Aktivitäten und Bezeichnungen, die ASCII Nichtzeichen enthalten. Da solche Zeichen nicht mit Amazon funktionieren, empfehlen wir CloudWatch, nur ASCII Zeichen zu verwenden, damit Sie die Messwerte verfolgen können CloudWatch.
-
(Optional) Geben Sie im Eingabefeld die Eingabewerte als einJSON. Sie können diesen Schritt überspringen, wenn Sie eine Demo ausführen.
-
Wählen Sie Start execution (Ausführung starten) aus.
Die Step Functions Functions-Konsole leitet Sie zu einer Seite mit den Ausführungsdetails weiter, auf der Sie Status in der Diagrammansicht auswählen können, um die zugehörigen Informationen im Einzelheiten zu den Schritten Bereich zu untersuchen.
-
Herzlichen Glückwunsch!
Sie sollten jetzt entweder eine laufende Demo oder eine State-Machine-Definition haben, die Sie anpassen können.