Uncategorized

ETL vs. ELT

ETL-Pipeline Streaming

Um praktische Erkenntnisse aus der Data Analytics zu gewinnen, müssen die Daten aufbereitet werden. Die Übermittlung von Rohdaten an das Data Warehouse zur Unterstützung von Geschäftsentscheidungen erfordert einen mehrstufigen Prozess, um Rohdaten in verwertbare Daten umzuwandeln.

Was ist ETL (Extrahieren, Laden, Transformieren)?

Dateningenieure verwenden ETL-Prozesse, um Daten für die Analyse vorzubereiten. ETL ist ein Akronym für Extrahieren, Transformieren und Laden. Es beschreibt einen dreistufigen Prozess, mit dem Rohdaten aus mehreren Quellsystemen extrahiert und in ein geeignetes Format umgewandelt werden, bevor sie in ein Data Warehouse geladen werden.

Erster Schritt: Extraktion
In der ersten Phase des ETL-Prozesses werden operative Rohdaten aus einem oder mehreren Quellsystemen extrahiert. Dies kann mit einem täglichen Batch-Job geschehen, wenn sich der Datensatz , den Sie laden, nur täglich ändert. Der Datensatz kann nach einem TRUNCATE TABLE SQL-Befehl überschrieben werden, wenn der Datensatz klein ist. Größere Quelldatensätze können inkrementell oder teilweise extrahiert werden, wobei nur die Änderungen gegenüber dem vorherigen Extrakt übernommen werden.

Eine partielle Extraktion mit einer Aktualisierungsbenachrichtigungstechnik wird verwendet, wenn die Quelldaten bei Änderungen synchronisiert werden müssen, um das Data Warehouse nahezu in Echtzeit zu aktualisieren. Das Quellsystem kann Änderungen an mehrere abonnierende Zielsysteme weiterleiten, wenn es sich um One-to-many-Verbindungen handelt. Micro-Batches sind nützlich für Systeme, die sich schnell ändern. Das Zielsystem kann das Quellsystem alle fünf Sekunden nach Änderungen abfragen, die dann nahezu in Echtzeit auf das Zielsystem angewendet werden können.

Quelldatenbanken können die Replikation mit Triggern auf Zeilenebene implementieren, die ausgelöst werden, wenn ein Ereignis wie ein Einfüge-, Lösch- oder Aktualisierungsvorgang stattgefunden hat. Diese Auslöser können so programmiert werden, dass sie ein Änderungsprotokoll aktualisieren, aus dem nachgelagerte Systeme Daten extrahieren können. Die Verwendung eines Messaging-Systems wie Amazon SNS ermöglicht es Ihnen, Benachrichtigungen direkt an Ihre Zielsysteme zu senden, um sie über Aktualisierungen im Quellsystem zu informieren. Diese Art der asynchronen Beziehung zwischen Quell- und Zieldatensystemen stellt sicher, dass die operativen Quellsysteme nie aufgehalten werden, weil ein Zielsystem die Aktualisierung aus irgendeinem Grund nicht aufnehmen kann.

Die Beziehungen zwischen Quell- und Zielsystemen können eine einfache Punkt-zu-Punkt-Verbindung sein, die einfach einzurichten und zu verwalten ist. Im Laufe der Zeit erstellen Unternehmen jedoch Hunderte solcher Eins-zu-Eins-Verbindungen, deren Pflege und Verwaltung zu aufwendig wird. An diesem Punkt kann ein Vended ETL-Tool die Verwaltung aller Verbindungen konsolidieren und ist damit eine hervorragende Investition. Ein wichtiger Aspekt der Extraktion ist die Erinnerung an die Datenquelle, so dass die Systeme diese katalogisieren können, um die Herkunft der Daten zu verfolgen und zu überprüfen. Bei der Datenherkunft (auch als "Data Lineage" bezeichnet) handelt es sich um Metadaten , die mit Datensätzen gepaart sind, die den Ursprung, die Änderungen und die Details zur Herkunft der Datenquellen detailliert beschreiben. Die Nachverfolgung der Quellen hilft bei der Kontrolle der Duplizierung und gibt Aufschluss darüber, ob die Daten vertrauenswürdig oder zuverlässig sind.

Das Extrahieren von Daten kann so einfach sein wie das Importieren einer CSV-Version einer Kalkulationstabelle oder so komplex wie die Verwendung einer Webdienst-Programmierschnittstelle (API). Die meisten Geschäftsanwendungen bieten APIs, die eine Extraktion mit einer Anwendung oder einem ETL-Tool ermöglichen. Das Format der Quelldaten gibt oft vor, wie sie extrahiert werden können. Ein JSON-Stream zum Beispiel erfordert die Verwendung einer Webservice-API. Eine flache Datei kann sequenziell gelesen werden. Eine Datenbankquelle verfügt in der Regel über ein Exportdienstprogramm zum Entladen von Daten in eine flache Datei.

Schritt zwei: Transformieren
Rohdaten aus einer operativen Quelle müssen in der Regel manipuliert und bereinigt werden, um sie für den allgemeinen Gebrauch geeignet zu machen. Die Datenumwandlung findet häufig in einer Zwischen- oder Staging-Datenbank statt. Rohe Quelldaten können überschüssige Daten enthalten, die herausgefiltert werden müssen. Sie können Lücken aufweisen, die mit Standardwerten oder interpolierten Daten gefüllt werden können. Doppelte Daten können je nach Verwendungszweck in der Zieldatenbank aggregiert oder entfernt werden. Wenn verwandte Daten aus mehreren Quellen extrahiert werden, können sie zusammengeführt werden, um eine einzige Aufzeichnung zu erstellen. Die Datenwerte können normalisiert werden. Zum Beispiel können verschiedene Quellen von Kundendaten diese unterschiedlich Aufzeichnung . Ein System schreibt den Staat vielleicht wie "New York", während andere eine Abkürzung wie "NY" verwenden. Die Standardisierung der Abkürzung kann bei der Datentransformation vorgenommen werden. Die Umwandlung kann Datenqualitätsoperationen beinhalten, wie z. B. die Überprüfung von Werten über mehrere Quellen hinweg, bevor sie als vertrauenswürdiger Wert weitergegeben werden.

Dritter Schritt: Laden
Das Laden der Daten in das Zielsystem ist der letzte Schritt des ETL-Prozesses. Das Laden der Daten kann mit einem Massenladeprogramm, Streaming, asynchronem Messaging oder einem benutzerdefinierten Programm erfolgen. Vorhandene Daten können vollständig überschrieben, ergänzt oder teilweise mit neuen Werten aktualisiert werden. Die Aktualisierungshäufigkeit kann in Stapeln, z. B. über Nacht, in regelmäßigen Abständen in Mikrostapeln oder kontinuierlich in einem Datenstrom erfolgen.

Was bedeutet Extrahieren, Laden, Transformieren (ELT)?

ELT steht für Extrahieren, Laden und Transformieren. ELT weicht vom traditionellen ELT-Prozess ab, indem es Datenumwandlungen innerhalb einer Ziel- oder Zwischen-Staging-Datenbank durchführt und dazu in der Regel SQL verwendet. ELT schließt die Datenumwandlung vor dem Laden des Data Warehouse ab, um Rohdaten im Zieldata Warehouse zu vermeiden.

ETL vs. ELT. Welche Unterschiede gibt es?

Es gibt zwei Hauptunterschiede, wenn wir über ETL vs. ELT sprechen:

  • ETL konzentriert sich auf das Laden transformierter, bereinigter Daten in das Zieldatenlager.
  • ELT transformiert Rohdaten im Data Warehouse.
  • ETL verwendet einen Zwischenspeicher und einen Datenbankserver, um Daten umzuwandeln.
  • ELT führt Datentransformationen innerhalb des Zieldatenlagers durch.

ETL kann als komplexer angesehen werden, weil es mehr Server und Datenspeicher verwendet als ELT. Dies lässt ELT als eine schlankere Datenpipeline erscheinen. Das Laden und Entladen von Daten kann langsam sein, so dass die Durchführung der Transformation auf demselben Server schneller sein kann. Die Idee der ELT wurde von Data-Warehouse-Anbietern wie Teradata vorgeschlagen und populär gemacht, da sie Kunden dazu ermutigte, umfangreichere Data-Warehouse-Systeme zu lizenzieren.

ETL vs. ELT: Was ist besser?

Bei der Entscheidung für ETL oder ELT sind mehrere Faktoren zu berücksichtigen. Wenn Sie nur begrenzte Kapazitäten in Ihrem Data Warehouse haben, sollten Sie ETL verwenden. Da für ELT nur gute SQL-Kenntnisse erforderlich sind, kann es Ihrem Team das Erlernen externer Tools zur Datentransformation ersparen. Wenn die Quelldaten nur geringfügig geändert werden müssen, z. B. durch Deduplizierung, dann ist ELT ein guter Ansatz. Wenn die Quelldaten Lücken aufweisen, mit anderen Quellen zusammengeführt und Datentypen geändert werden müssen, dann ist ELT die bessere Wahl.

ETL mit Actian DataConnect

Zur besseren Unterstützung von ETL bietet Actian DataConnect einen Extract Editor, mit dem Sie unstrukturierte Daten markieren, die erforderlichen Datenfelder aus verschiedenen Zeilen der Datei extrahieren und die Felder zu einer flachen Aufzeichnung zusammenstellen können. Der extrahierte Inhalt wird in einem tabellarischen Zeilen- und Spaltenformat dargestellt, das Sie vor der Konvertierung der Daten in ein Zielformat anzeigen können. Die extrahierten Daten werden im Map Editor als Quelle für weitere Datentransformationsaktivitäten verwendet. Extract Editor bietet einen umfangreichen Satz von Mustererkennungsregeln und Aktionen, die eine saubere Datenextraktion unterstützen.

Actian DataConnect kann spaltenförmige Daten in ausgewähltem Text unter Verwendung eines bestimmten Spaltentrennzeichens parsen. Dadurch wird eine Textzeile in multiple data aufgeteilt. Bei getaggten Daten kann ein Nutzer Tag-Separatorwert verwendet werden, um eine Textzeile in ein Zeilenerkennungsmuster und ein Datenfeld mit festen Start- und Endspalten aufzuteilen.

Extrakt-Skripte können durch Speichern von Extraktdateien als Content Extraction Language (CXL) Skriptdatei erzeugt werden. Actian DataConnect bietet eine Runtime-Engine, die eine eingebettet, High-Performance, plattformübergreifende Engine ist. Sie führt die Integrationsartefakte, die mit der Actian DataConnect Studio IDE oder dem Studio SDK erstellt wurden, auf Windows- oder Linux-Servern aus. Das gleiche portable Integrationspaket (.djar-Datei) kann auf jeder dieser Plattformen ohne Code-Änderungen ausgeführt werden.

Die Runtime Engine kann über eine Befehlszeilenschnittstelle (CLI), das Java SDK, den Integration Manager oder die API aufgerufen werden. In diesem Abschnitt finden Sie Informationen zur Verwendung der Runtime Engine über die CLI. Actian Data Platform enthält eine kostenlose Runtime Engine, die aufgerüstet werden kann, um mehrere parallele Job-Streams zum Laden von Daten in das Cloud Data Warehouse zu unterstützen. Actian macht ETL und ETL viel handhabbarer durch die Einbeziehung der Actian Data Platform, ein robustes Cloud Data Warehouse mit den Funktionen , um es aus mehreren On-Premise- und SaaS-Datenquellen zu befüllen.

Es ist an der Zeit, Ihre Daten einfach zu machen. Besuchen Sie unsere Website, um mehr über die Actian Datenprodukte und -lösungen zu erfahren.