Uncategorized

Was ist eine ETL-Pipeline?

ETL-Pipeline Streaming

Was versteht man unter einer ETL-Pipeline?

Die ETL-Pipeline beschreibt die Komponenten einer Datenpipeline , die Quelldaten extrahiert, transformiert und in ein Zieldatawarehouse lädt.

Warum ETL-Pipelines verwenden?

ETL-Pipelines verbinden und automatisieren die Extraktion, Transformation und das Laden von Daten aus Datenquellen in ein Ziel-Data-Warehouse. Das Hauptmerkmal ist, dass sie als ein einziger End-to-End-Prozess verwaltet werden können.

Was ist eine Datenpipeline?

Eine Datenpipeline ist ein umfassenderer Prozess als ETL, da sie allgemeine Datenbewegungen beschreibt, die über ETL hinausgehen, wie z. B. die Einrichtung eines Daten-Lake als Lager für Rohdaten in einem hochleistungsfähigen Datenspeicher. So kann beispielsweise eine komplexe Datenpipeline verwendet werden, um Rohdaten aus vielen operativen Systemen in einen Daten-Lake zu extrahieren. Ein ETL-Prozess kann dann verwendet werden, um die bereitgestellten Daten zu transformieren und in ein Data-Warehouse für Datenanalysen zu laden oder zum trainieren Modellen fürMaschinelles Lernen zu verwenden.

Was ist der Unterschied zwischen ETL-Pipeline und Datenpipeline?

Ein ETL-Prozess kann eine Teilmenge einer umfassenderen Datenpipeline sein. Im Gegensatz zu ETL können Teile der umfassenderen Datenpipeline Daten ohne Transformation zu einem Zwischenziel wie einem Daten-Lake konsolidieren. So können Sie beispielsweise Mainframe-, CRM- und Website-Protokolle in einem Daten-Lake auf AWS S3-Speicher konsolidieren. Verwenden Sie dann einen ETL-Prozess, um die zusammengeführten Daten-Lake durch eine Reihe von Datentransformationen zu extrahieren, bevor Sie die für Analysen geeigneten Daten in ein Data Warehouse laden. An dieser Stelle kann ein Datenvisualisierungstool wie Tableau verwendet werden, um Geschäftseinblicke zu gewinnen.

Wie man eine ETL-Pipeline in Python erstellt

Eine ETL-Pipeline kann mit Python von Hand geschrieben oder zum Aufrufen von Operatoren aus Tools verwendet werden, die ETL unterstützen. Dateningenieure verwenden in der Regel Python , um ETL-Pipelines zu erstellen. Diese Aufgabe wird durch Tools wie Luigi und das Open-Source-Tool Apache Airflow zur verwalten Workflows erleichtert. Zum Verschieben von Daten können FTP- oder lokale Dateikopiervorgänge verwendet werden. Actian DataConnect-Jobs können von Python aus aufgerufen und zum Profilieren, Extrahieren, Transformieren und Laden von Daten verwendet werden.

Pygrametl ist ein Framework , das Dimensions- und Faktentabellen als Python darstellen kann. Um eine ETL-Pipeline in Pygrametl zu erstellen, folgen Sie diesen Schritten:

  • Importieren Sie Daten aus Formularquelldateien in Pygrametl-Dimensionen und Faktentabellen.
  • Verwenden Sie das Python psycopg2, um sich mit dem Ziel-Datawarehouse zu verbinden.
  • Verwenden Sie das SQLSource-Modul, um SQL SELECT-Anweisungen in die Python einbetten , die zur Datenextraktion verwendet wird.
  • Führen Sie die Datenumwandlung an den extrahierten Daten Zeile für Zeile durch und fügen Sie die umgewandelten Daten in das Zieldatawarehouse ein.

Apache Airflow kann zur Erstellung von ETL-Workflows verwendet werden, indem ein gerichteter azyklischer Graph (DAG) erstellt wird, der die Beziehungen und Abhängigkeiten zwischen den ETL-Aufgaben ausdrückt.

Mit Airflow importieren Sie die erforderlichen Bibliotheken und definieren die Standardargumente für jede Aufgabe in der DAG. Die DAG-Objektdefinition kann Parameter zur Planung des Eigentümers, des Ausführungsintervalls für die Ausnahmebehandlung und der Wiederholungsversuche enthalten.

Die Actian Data Platform bietet die Möglichkeit, ETL-Pipelines zu erstellen und zu planen. Sie verfügt über integrierte Konnektoren zu Quellen, einschließlich SaaS-Anwendungen wie Salesforce, NetSuite und Marketo, zusätzlich zu den Datenquellen On-Premises. Zu den branchenüblichen Konnektivitäts-APIs gehören Spark, ODBC, JDBC und .NET.

Actian DataConnect ist eine umfassende und skalierbar Lösung für den Aufbau und Betrieb anspruchsvoller ETL-Pipelines. Sie können die visuelle Point-and-Click-Oberfläche nutzen, um Datenquellen mit Zielen zu verbinden, zu profilieren, zu bereinigen und abzubilden und Prozess-Workflows auf der Grundlage von Geschäftsregeln zu erstellen. Einmal erstellte ETL-Pipelines können wiederverwendet werden. ETL-Pipelines können unabhängig von ihrem Einsatzort ausgeführt, überwacht und verwaltet werden, sei es in der Actian Cloud, Ihrem VPC, Rechenzentrum oder einem eingebettet Service.

Actian DataFlow kann zur Erstellung von ETL-Pipelines verwendet werden. DataFlow verwendet einen erweiterten JavaScript-Dialekt, um eine Reihe von Datenverarbeitungsvorgängen zu orchestrieren.

Nachfolgend finden Sie ein Beispiel für eine DataFlow-Anwendung zur Datenextraktion und -umwandlung. Dies sind die Schritte, die durchgeführt werden müssen:

  1. Erstellen Sie ein Schema, das die Struktur der zu lesenden Daten definiert.
  2. Erstellen Sie ein Dateilesegerät und legen Sie die Eigenschaften des Lesegeräts fest.
  3. Erstellen Sie einen Filteroperator für die gelesenen Daten und definieren Sie die Filterbedingung als Prädikatsausdruck.
  4. Verarbeiten Sie die Daten, die die Filterbedingung erfüllen, indem Sie sie in eine lokale Datei schreiben.
  5. Behandelt die Daten, die die Filterbedingung nicht erfüllen, indem sie in eine andere lokale Datei geschrieben werden.
  6. Führt die zusammengesetzte DataFlow-Anwendung explizit aus und gibt einen Namen an, der für Debugging und Profiling nützlich ist.

Skript

Actian DataFlow bietet die folgenden Operatoren zur Datentransformation auf Feldebene:

  • DeriveFields-Operator, um neue Felder zu berechnen.
  • DiscoverEnums-Operator zur Ermittlung von Aufzählungsdatentypen.
  • MergeFields-Operator zum Zusammenführen von Feldern.
  • RemoveFields-Operator, um Felder zu entfernen.
  • RetainFields-Operator, um Felder beizubehalten.
  • SelectFields-Operator, um Felder auszuwählen.
  • RemapFields-Operator, um Felder umzubenennen.
  • SplitField-Operator, um Felder zu teilen.
  • RowsToColumns-Operator zum Umwandeln von Zeilen in Spalten (Pivot).
  • ColumnsToRows-Operator zum Umwandeln von Spalten in Zeilen (Unpivot).

Actian DataFlow bietet Datenlader, die die Actian Data Platform direkt als Stream aus HDFS-Dateitypen wie Apache AVRO laden können. Bei der Verwendung der direkten Ladefunktion werden die Daten vom Eingabeport direkt in die Vector-Engine gestreamt. Das direkte Laden kann parallel laufen und unterstützt die Ausführung in einer Cluster wie Hadoop. Direktes Laden kann verwendet werden, um Daten aus dem HDFS in eine Actian Data Platform-Instanz zu kopieren. Bei der Ausführung innerhalb eines Cluster werden das Lesen der Daten, die Formatierung und das Senden an die Actian Data Platform in einer verteilten Umgebung ausgeführt, wobei die Hadoop-Ressourcen voll genutzt werden.

Was sind die Vorteile von ETL-Pipelines?

  • Stellen Sie genaue, konsistente Daten dort bereit, wo Ihr Unternehmen sie benötigt.
  • ETL-Workflows können als Einheit verwaltet und ausgeführt werden, um die Verwaltungskosten zu senken.
  • Arbeitsabläufe können so gestaltet werden, dass sie unternehmensweit skalierbar sind und Lernzeiten und Fehler reduzieren.
  • Tools wie DataConnect bieten eine Low-Code-Datenintegrationsplattform, mit der sich komplexere Anwendungsfälle schneller umsetzen lassen.
  • Durchsetzung von Datenqualitätsstandards.
  • Standardisieren Sie ETL-Pipelines, um auf zuverlässigere und kontrollierte Daten zuzugreifen.
  • Datenintegrationstools wie DataConnect bieten eine umfassende Bibliothek mit vorgefertigten Konnektoren.
  • Daten können schon früh in der Pipeline profiliert werden, um eine höhere Datenqualität für eine sichere Entscheidungsfindung zu erhalten.
  • Planen Sie Datenbewegungen so, dass sie den Anforderungen der Quelldatensätze und der Zieldatawarehouses entsprechen.
  • ETL-Pipelines können als Komponenten innerhalb größerer Datenpipelines verwendet werden.

Was ist eine ETL-Pipeline?

Wir benötigen qualitativ hochwertige Daten in einer Datenbank, um nützliche Data Analytics durchzuführen. Um Rohdaten aus mehreren Quellen in eine Form zu bringen, die Geschäftsentscheidungen unterstützt, wird ein dreistufiger Extraktions-, Transformations- und Ladeprozess verwendet, auch bekannt als ETL.

Erfahren Sie mehr über die ActianProdukte und -Lösungen und wie sie Ihr Unternehmen bei der Bewältigung von Datenmanagementproblemen unterstützen können.