SQL-basierte ETL mit Apache Spark in Amazon EKS

SQL-basierte ETL mit Apache Spark auf Amazon EKS bietet deklarative Datenverarbeitungsunterstützung, kodelose ETL-Funktionen (Extract-Transform-Load) und Automatisierung der Workflow-Orchestrierung, damit Ihre Geschäftsanwender (z. B. Analysten und Datenwissenschaftler) auf ihre Daten zugreifen und aussagekräftige Erkenntnisse gewinnen können, ohne dass manuelle IT-Prozesse erforderlich sind.

Vorteile

Entwickeln, Testen und Debuggen von ETL-Aufträgen in Jupyter

Verwenden Sie JupyterHub, eine webbasierte, interaktive integrierte Entwicklungsumgebung (IDE), um die Entwicklung Ihrer ETL-Anwendungen zu vereinfachen.

Verwenden Sie einen SQL-zentrierten Ansatz
.

Implementieren Sie Geschäftslogik und Datenqualitätsprüfungen bei der Entwicklung von ETL-Pipelines mit Spark SQL.

Orchestrieren Sie Aufträge ohne Code
.

Verwenden Sie Argo-Workflows zur Planung von Aufträgen und zur Verwaltung komplexer Auftragsabhängigkeiten, ohne dass Sie programmieren müssen.

Stellen Sie automatisch Docker-Images bereit
.

Richten Sie eine AWS-Pipeline für kontinuierliche Verbesserung und kontinuierliche Entwicklung (CI/CD) ein, um das Docker-Image des Daten-Frameworks sicher in Amazon Elastic Container Registry (Amazon ECR) zu speichern.

Übersicht

Das folgende Diagramm zeigt die Architektur, die Sie mit dem Beispielcode auf GitHub erstellen können.

SQL-basierte ETL mit Apache Spark in Amazon EKS Architektur

SQL-basiertes ETL mit Apache Spark auf Amazon EKS stellt eine sichere, fehlertolerante Umgebung mit automatischer Skalierung bereit, um Ihre ETL-Workloads zu unterstützen, die die folgenden Komponenten enthält:

  1. Eine anpassbare und flexible Workflow-Verwaltungsebene (siehe die Gruppe Orchestrierung in Amazon Elastic Kubernetes Service (Amazon EKS) im Diagramm) umfasst das Plug-In Argo Workflows. Dieses Plug-In bietet ein webbasiertes Tool zur Orchestrierung Ihrer ETL-Aufträge, ohne dass Sie Code schreiben müssen. Optional können Sie auch andere Workflow-Tools wie Volcano und Apache Airflow verwenden.
  2. Ein sicherer Arbeitsbereich für die Datenverarbeitung wird konfiguriert, um Daten-Workloads im selben Amazon EKS-Cluster zu vereinheitlichen. Dieser Arbeitsbereich enthält ein zweites webbasiertes Tool, JupyterHub, für die interaktive Entwickelung und Prüfung von Aufträgen. Sie können entweder ein Jupyter-Notebook mit einem deklarativen Ansatz entwickeln, um ETL-Aufgaben zu spezifizieren, oder Ihre ETL-Schritte mit PySpark programmatisch schreiben. Dieser Arbeitsbereich bietet auch Spark-Auftragsautomatisierungen, die durch das Argo Workflows-Tool verwaltet werden.
  3. Eine Reihe von Sicherheitsfunktionen werden in der Lösung bereitgestellt. Amazon Elastic Container Registry (Amazon ECR) verwaltet und sichert ein Docker-Image des Datenverarbeitungs-Frameworks. Die Funktion für Rollen von AWS Identity and Access Management (IAM) für Servicekonten (IRSA) in Amazon EKS bietet Token-Autorisierung mit fein abgestufter Zugriffskontrolle auf andere AWS-Services. Die Amazon-EKS-Integration mit Amazon Athena ist zum Beispiel passwortlos, um das Risiko der Offenlegung von AWS-Anmeldeinformationen in einer Verbindungszeichenfolge zu verringern. Jupyter ruft die Anmeldeinformationen von AWS Secrets Manager spontan in Amazon EKS ab. Amazon CloudWatch überwacht Anwendungen in Amazon EKS mithilfe der aktivierten Funktion CloudWatch Container Insights.
  4. Die analytischen Workloads im Amazon-EKS-Cluster geben die Datenergebnisse an einen Data Lake von Amazon Simple Storage Service (Amazon S3) aus. Ein Datenschemaeintrag (Metadaten) wird über Amazon Athena in einem AWS-Glue-Datenkatalog erstellt.

SQL-basierte ETL mit Apache Spark in Amazon EKS

Version 1.0.0
Veröffentlicht: 07/2021
Autor: AWS

Weitere Ressourcen

Hat Ihnen dieser Leitfaden geholfen?
Feedback geben 
Symbol für Entwickeln
Stellen Sie eine AWS-Lösung selbst bereit

Durchsuchen Sie unsere Bibliothek der AWS-Lösungen, um Antworten auf häufige Architekturprobleme zu erhalten.

Weitere Informationen 
Einen APN-Partner suchen
Eine AWS-Partner-Lösung finden

Finden Sie AWS-Partner, die Ihnen den Einstieg erleichtern.

Weitere Informationen 
Symbol für Erkunden
Beratung erkunden

Präskriptive Architekturdiagramme, Beispielcode und technische Inhalte für häufig vorkommende Anwendungsfälle finden.

Weitere Informationen