Übersicht über Blueprints in AWS Glue - AWS Glue

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.

Übersicht über Blueprints in AWS Glue

Anmerkung

Die Blueprints-Funktion ist derzeit in den folgenden Regionen der AWS Glue-Konsole nicht verfügbar: Asien-Pazifik (Jakarta) und Naher Osten (VAE).

AWS Glue-Blueprints ermöglichen das Erstellen und Freigeben von AWS Glue-Workflows. Wenn es einen komplexen ETL-Prozess gibt, der für ähnliche Anwendungsfälle verwendet werden kann, können Sie einen Blueprint erstellen, anstatt mit AWS Glue für jeden Anwendungsfall einen eigenen Workflow anzulegen.

Im Blueprint sind die Aufträge und Crawler für den Workflow sowie die Parameter definiert, die der Workflow-Benutzer beim Ausführen des Blueprints angibt, um einen Workflow zu erstellen. Durch die Verwendung von Parametern lassen sich aus einem einzelnen Blueprint Workflows für verschiedene ähnliche Anwendungsfälle generieren. Weitere Informationen zu Workflows finden Sie unter Übersicht über Workflows in AWS Glue.

Im Folgenden sind Sie einige Anwendungsfälle für Blueprints beschrieben:

  • Sie möchten einen vorhandenen Datensatz partitionieren. Die Eingabeparameter für den Blueprint sind Amazon-Simple-Storage-Service(Amazon S3)-Quell- und -Zielpfade sowie eine Liste von Partitionsspalten.

  • Sie möchten einen Snapshot einer Amazon-DynamoDB-Tabelle in einem SQL-Datenspeicher wie Amazon Redshift erstellen. Die Eingabeparameter für den Blueprint sind der Name der DynamoDB-Tabelle und eine AWS Glue-Verbindung, in der ein Amazon-Redshift-Cluster und eine Zieldatenbank angeben sind.

  • Sie möchten CSV-Daten in mehreren Amazon-S3-Pfaden in Parquet konvertieren. Der AWS Glue-Workflow soll für jeden Pfad einen eigenen Crawler und Auftrag enthalten. Die Eingabeparameter sind die Zieldatenbank im AWS Glue Data Catalog und eine durch Komma getrennte Liste mit Amazon-S3-Pfaden. Beachten Sie, dass in diesem Fall die Anzahl der Crawler und Aufträge, die der Workflow erstellt, variabel ist.

Komponenten von Blueprints

Ein Blueprint ist ein ZIP-Archiv, das die folgenden Komponenten enthält:

  • Ein Python-Layoutgenerator-Skript

    Enthält eine Funktion, die das Workflow-Layout angibt – die Crawler und Aufträge, die für den Workflow erstellt werden sollen, die Auftrags- und Crawlereigenschaften sowie die Abhängigkeiten zwischen den Aufträgen und Crawlern. Die Funktion akzeptiert Blueprint-Parameter und gibt eine Workflowstruktur (JSON-Objekt) zurück, die AWS Glue verwendet, um den Workflow zu generieren. Da Sie ein Python-Skript zum Generieren des Workflows verwenden, können Sie Ihre eigene Logik hinzufügen, die auf Ihre Anwendungsfälle abgestimmt ist.

  • Eine Konfigurationsdatei

    Gibt den vollständig qualifizierten Namen der Python-Funktion an, die das Workflow-Layout generiert. Gibt außerdem die Namen, Datentypen und andere Eigenschaften aller Blueprint-Parameter an, die vom Skript verwendet werden.

  • (Optional) ETL-Skripte und unterstützende Dateien

    In einem erweiterten Anwendungsfall können Sie den Speicherort der ETL-Skripte, die Ihre Aufträge verwenden, parametrisieren. Sie können Auftragsskriptdateien in das ZIP-Archiv aufnehmen und einen Blueprint-Parameter für einen Amazon-S3-Speicherort angeben, in den die Skripte kopiert werden sollen. Das Layout-Generator-Skript kann die ETL-Skripte an den angegebenen Speicherort kopieren und diesen Speicherort als Pfadeigenschaft für das Auftragsskript angeben. Sie können auch Bibliotheken oder andere unterstützende Dateien einschließen, vorausgesetzt, Ihr Skript kann sie verarbeiten.

Das Feld mit der Bezeichnung „Blueprint“ enthält zwei kleinere Felder, eines für das Python-Skript und das andere für die Konfigurationsdatei.
Blueprint-Ausführungen

Wenn Sie einen Workflow aus einem Blueprint erstellen, führt AWS Glue den Blueprint aus. Dabei wird ein asynchroner Prozess gestartet, um den Workflow und die Aufträge, Crawler und Auslöser zu erstellen, die im Workflow gekapselt sind. AWS Glue verwendet die Blueprint-Ausfürhung, um die Erstellung des Workflows und seiner Komponenten zu orchestrieren. Der Ausführungsstatus des Blueprints informiert Sie über den Status des Erstellungsprozesses. Die Blueprint-Ausführung speichert auch die Werte, die Sie als Blueprint-Parameter angegeben haben.

Das Feld „Blueprint run“ (Blueprint-Ausführung) enthält Symbole mit der Bezeichnung „Workflow“ und „Parameter Values (Parameterwerte).

Sie können Blueprint-Läufe mit der AWS Glue Konsole oder AWS Command Line Interface () anzeigen.AWS CLI Bei der Problembehandlung eines Workflows können Sie jederzeit die Blueprint-Ausführung anzeigen, um die Parameterwerte einzusehen, die zum Erstellen des Workflows verwendet wurden.

Lebenszyklus eines Blueprints

Blueprints werden in AWS Glue entwickelt, getestet und registriert und werden ausgeführt, um Workflows zu erstellen. Am Lebenszyklus von Blueprints sind in der Regel drei Personas beteiligt.

Persona Aufgaben
AWS GlueDeveloper
  • Schreibt das Workflow-Layoutskript und erstellt die Konfigurationsdatei.

  • Testet den Blueprint lokal mithilfe von Bibliotheken, die vom AWS Glue-Service bereitgestellt werden.

  • Erstellt ein ZIP-Archiv des Skripts, der Konfigurationsdatei und der unterstützenden Dateien und veröffentlicht das Archiv an einem Speicherort in Amazon S3.

  • Fügt dem Amazon S3 S3-Bucket eine Bucket-Richtlinie hinzu, die dem AWS Glue AWS Administratorkonto Leseberechtigungen für Bucket-Objekte gewährt.

  • Gewährt dem AWS Glue-Administrator IAM-Leseberechtigungen für das ZIP-Archiv in Amazon S3.

AWS Glue-Administrator
  • Registiert den Blueprint bei AWS Glue. AWS Glue erstellt eine Kopie des ZIP-Archivs an einem reservierten Amazon-S3-Speicherort.

  • Gewährt Datenanalysten IAM-Berechtigungen für den Blueprint.

Datenanalyst
  • Führt den Blueprint aus, um einen Workflow zu erstellen, und stellt die Blueprint-Parameterwerte bereit. Überprüft den Status der Blueprint-Ausführung, um sicherzustellen, dass der Workflow und die Workflow-Komponenten erfolgreich generiert wurden.

  • Führt den Workflow aus und ist für die Fehlerbehebung zuständig. Kann den Workflow vor der Ausführung überprüfen, indem er das Workflow-Entwurfsdiagramm in der AWS Glue-Konsole anzeigt.