Konzept von ETL-Lösungen im Cloud-Kontext:ETL-Pipelines bleiben auch in der Cloud ein wichtiges Tool
11. April 2023Daten gelten als das Herzstück von Unternehmen, und ETL-Pipelines (Extract, Transform, Load) werden deswegen immer wichtiger. Moderne ETL-Pipelines oder ETL-Leitungen helfen dabei, Daten schnell für die geschäftliche Verwendung bereitzustellen. Cloud-basierte ETL-Systeme sind mittlerweile ein wesentliches Werkzeug, das Unternehmen für das Management großer Datenmengen einsetzen und auf das sie sich in Zukunft immer mehr verlassen werden. Data Pipelines gewinnen deshalb zusammen mit den Fortschritten im Bereich Big Data an Bedeutung.
Bei den ETL-Pipelines handelt es sich um spezielle Prozesse, die Daten aus verschiedenen Quellen in eine Datenbank, zum Beispiel in ein Data Warehouse, übertragen. ETL steht für Extract, Transform, Load („Extrahieren, Transformieren, Laden“), drei voneinander abhängige Integrationsprozesse für Daten, die sie von einer Datenbank in eine andere transportieren. Nach dem Laden der Daten können diese für Berichte, Analysen und die Gewinnung aussagekräftiger Geschäftsberichte verwendet werden.
ETL gewann in den 1970er Jahren an Bedeutung, als Unternehmen begannen, verschiedene Arten von Geschäftsinformationen in mehreren Daten-Behältern (Repositories) oder Datenbanken zu speichern. In den späten 1980er und frühen 1990er Jahren kamen dann Data Warehouses auf. Data Warehouses, eine andere, spezielle Form von Datenbanken, ermöglichen den Zugriff auf Daten aus mehreren unterschiedlichen Systemen wie zum Beispiel Mainframes, Minicomputer, PCs und Anwendungen wie zum Beispiel Tabellenkalkulationen.
Die Zahl der Datentypen, -quellen und -techniken ist im Laufe der Zeit exponentiell angewachsen, und ETL-Pipelines können diese optimal verarbeiten. ETL stellt generell eine der Methoden von Unternehmen dar, um Daten zu sammeln, zu importieren und zu verarbeiten.
So funktioniert ETL
Die ETL-Pipelines und ihre Transformation umfassen drei Prozesse, die die Integration von Quell- zu Zieldaten ermöglichen: Datenextraktion, Transformation und Laden:
Schritt 1: Extraktion
Die meisten Unternehmen verarbeiten Daten aus verschiedenen Quellen, um Erkenntnisse für Anwendungen im Bereich von Business Intelligence zu gewinnen, und setzen dafür verschiedene Techniken von Datenanalysen ein. Um eine solch komplizierte Datenstrategie umsetzen zu können, müssen sich die Daten über Pipelines frei zwischen Systemen und Anwendungen bewegen können.
Bevor die Daten an einen neuen Standort verschoben werden, müssen sie aus ihrer Quelle, zum Beispiel einem Data Warehouse oder einem Data Lake, abgerufen werden. Anschließend muss man in einem ersten Schritt des ETL-Prozesses strukturierte und unstrukturierte Daten in ein einziges Repository importieren und miteinander verbinden.
Das Abrufen von Datenmengen kann aus einer Vielzahl von Datenquellen erfolgen, darunter:
- vorhandene Datenbanken und Legacy-Systeme,
- Cloud-, Hybrid- und Vor-Ort-Infrastrukturen,
- Anwendungen für Vertrieb und Marketing,
- mobile Geräte und Anwendungen,
- CRM-Systeme,
- Plattformen für Datenspeicherung,
- Data Warehouses und
- Analytics-Software.
Die manuelle Datenextraktion kann zwar direkt durchgeführt werden, stellt aber einen zeitaufwändigen und fehleranfälligen Prozess dar. ETL-Pipelines automatisieren dagegen die Extraktion. Die Ergebnisse solcher Pipelines führen zu einem zuverlässigeren und effizienteren Arbeitsablauf.
Schritt 2: Transformation
In dieser Phase des ETL-Prozesses kann man Regeln und Vorschriften einführen, um Qualität und Zugang zu den Daten zu gewährleisten. Man kann auch Kontrollen verwenden, um das Unternehmen bei der Einhaltung von Berichtsstandards zu unterstützen. Der Prozess der Umwandlung von Daten lässt sich in verschiedene Teilprozesse unterteilen. Dazu gehören:
- Bereinigung: behebt Diskrepanzen und fehlende Werte in den Daten,
- Standardisierung: wendet Formatierungsrichtlinien auf den Datensatz an,
- Deduplizierung: beinhaltet das Ausschließen oder Verwerfen redundanter Daten,
- Verifizierung: umfasst das Entfernen unbrauchbarer Daten und das Markieren von Unregelmäßigkeiten,
- Sortieren: je nach Art der Daten und
- sonstige Aufgaben, wie zum Beispiel Anwendung zusätzlicher/optionaler Regeln zur Verbesserung der Datenqualität.
Die Transformation der Daten kann als die wichtigste Komponente der Verarbeitungsaktivitäten der ETL-Pipeline betrachtet werden. Die Datenumwandlung verbessert insgesamt die Datenintegrität, indem sie Duplikate eliminiert und sicherstellt, dass die Rohdaten vollständig und gebrauchsfertig am neuen Ziel ankommen.
Schritt 3: Laden
Der letzte Schritt des ETL-Prozesses besteht im Laden der neu transformierten Daten in einen neuen Speicherort (Data Lake oder Data Warehouse). Die Daten können auf einmal (vollständiges Laden) oder in bestimmten Abständen (inkrementelles Laden) geladen werden.
- Vollständiges Laden: In einem Szenario von ETL-Full-Loading wird der gesamte Output des Transformations-Prozesses als neue, eindeutige Einträge in das Data Warehouse oder Repository geladen. Full-Loading kann gelegentlich für Forschungszwecke hilfreich sein, führt aber dazu, dass die Datensätze exponentiell anwachsen und es schwierig wird, sie auf einfache Weise zu pflegen.
- Inkrementelles Laden: Die Methode des schrittweisen Ladens ist weniger gründlich, aber besser zu handhaben. Bei der inkrementellen Lademethode werden eingehende Daten mit vorhandenen Daten verglichen und nur dann neue Einträge erstellt, wenn jemand neue und besondere Informationen entdeckt. Diese Architektur ermöglicht kleinere, weniger kostspielige Data Warehouses, um Systeme auf Basis von Business Intelligence zu verwalten.
Cloud-gestützte versus lokale ETL
Traditionelle Data Warehouses bestehen aus physischen Servern vor Ort, was auf eine lokale Datenverwaltung und -speicherung in einem Data Warehouse verweist. Diese regionalen Data Warehouses bereinigen und konvertieren Daten aus verschiedenen Quellen, bevor sie sie in ihren physischen Datenbanken speichern.
Cloud-basierte ETL-Dienste bieten dieselben Funktionen wie ihre lokalen Gegenstücke, allerdings befinden sich das Data Warehouse und die meisten Datenquellen jetzt ausschließlich online. Cloud-ETL-Technologien ermöglichen es den Kunden, ihren Datenfluss über eine einzige Schnittstelle zu steuern, die mit dem Ursprung und dem Ziel der Daten verbunden ist.
Vorteile von Cloud-ETL-Lösungen
Cloud-basierte ETL-Tools bieten Unternehmen verschiedene Vorteile im Vergleich zur Datenverwaltung vor Ort. Hier sind einige von ihnen:
- Skalierbarkeit: Die Skalierbarkeit von Cloud Computing ist wesentlich größer als bei der Datenverwaltung vor Ort. Wenn man an die Speicher- oder Verarbeitungsgrenzen der Cloud stößt, kann man relativ einfach einen neuen Server anschaffen oder mehr Speicherplatz kaufen. Beim On-Premise-Computing hingegen müsste man mehr Hardware kaufen, was sowohl kostspielig als auch zeitaufwendig ist.
- Eignung für mobile Umgebungen: Cloud-Plattformen ermöglichen zunehmend den Einsatz mobiler Geräte wie Smartphones, Tablets und Notebooks, so dass die Verbraucher von jedem Ort aus auf Netzwerke zugreifen können. ETL-Systeme vor Ort können kann zwar an mobile Aufgaben angepasst werden, verfügen aber oft nicht standardmäßig über diese Funktion.
- Datenverwaltung in Echtzeit: Hierbei geht es um die Beseitigung von Verzögerungen im Datenstrom durch Sammlung und Umwandlung von Daten aus verschiedenen Anwendungen und ihre Speicherung an einem zentralen, leicht zugänglichen Ort. Darüber hinaus stellt ETL in der Cloud die benötigten Daten innerhalb von Mikrosekunden für die Anwender bereit.
- Vollständig verwaltete Dienste: Für die Erleichterung der Arbeit der Endanwender bieten öffentliche Cloud-Dienste vollständig integrierte Anwendungen, für die Service- und Wartungsverantwortung übernommen wird. Bei einer ETL-Lösung vor Ort muss man sich selbst um diese Probleme kümmern, was oft die Einstellung von kompetentem technischem Personal dafür erfordert.
- Vermeidung von Datenverlust: Oft kommt es dazu, dass lokal und auf einigen wenigen Servern gespeicherte Daten verloren gehen. Bei einem Cloud-basierten Server bleiben dagegen alle in die Cloud übertragenen Informationen sicher zugänglich. Und man kann von jedem Gerät mit einem Internet-Anschluss aus leicht auf sie zugreifen.
Insgesamt gilt, dass ETL eine wichtige Methode zur Konsolidierung aller relevanten Daten in einem einzigen Repository darstellt: Man kann auf sie zugreifen, um sie zu analysieren und auf diese Weise Führungskräfte, Administratoren und andere verantwortliche Mitarbeiter in die Lage zu versetzen, auf der Grundlage der Daten wichtige Geschäftsentscheidungen zu treffen.
Anwendungsfälle von ETL
Zu den Anwendungsfällen von ETL gehören zum Beispiel:
- Data Warehouse: Ein Data Warehouse kann als Datenbank bezeichnet werden, in der Daten aus verschiedenen Quellen zu Geschäftszwecken kombiniert und analysiert werden. Häufig wird ETL verwendet, um Daten in ein Data Warehouse zu übertragen.
- Integration von Marketing-Daten: Bei dieser Integration werden alle Marketing-Daten, darunter Daten von Kunden, sozialen Netzwerken und Web-Analysen, an einen zentralen Ort übertragen, um sie besser analysieren zu können und für die Entwicklung künftiger Strategien zu verwenden. ETL eignet sich generell dafür, Marketing-Daten für Analyseaufgaben zu sammeln und zu organisieren.
- Machine Learning (ML) und Artificial Intelligence (AI): ML stellt eine Methode zur Extraktion von Informationen aus Daten dar, ohne eigene Analysemodelle zu erstellen. Stattdessen nutzt das System Algorithmen der AI, um aus den Daten tiefere Erkenntnisse zu ziehen. Man kann ETL auch dazu verwenden, Daten für Aufgaben des Machine Learning (ML) zu konsolidieren.
- Integration von IoT-Daten: Das Internet of Things (IoT) besteht aus einer Gruppe vernetzter Geräte, die in der Lage sind, über Sensoren, die in die Hardware integriert sind, Daten zu sammeln und zu übertragen. Zu den IoT-Geräten können Fabrikanlagen, Netzwerk-Server, Smartphones und viele andere Maschinen und Geräte gehören, einschließlich tragbarer und anschließbarer Geräte. ETL ermöglicht die Konsolidierung von Daten aus zahlreichen IoT-Quellen an einem einzigen Ort für Analyseaufgaben.
- Cloud-Migration: Unternehmen verlagern ihre Daten und Anwendungen, die vor Ort gespeichert sind, in die Cloud, um Geld einzusparen, die Skalierbarkeit ihrer Programme zu erhöhen und ihre Daten effektiver zu schützen. Die Verwendung von ETL ist in Unternehmen üblich, um solche Prozesse in den Griff zu bekommen.
Bei der Verwendung eines effizienten ETL-Service in der Cloud sind Veränderungen an den Daten sofort am Zielort sichtbar. Datenanalysten können relevante Erkenntnisse viel schneller gewinnen, was den Unternehmen benötigte Wettbewerbsvorteile verschafft.
Unternehmen, die die Plattform von DoubleCloud für ihre ETL-Tools in der Cloud verwenden, können ihre Daten einfach und effizient integrieren und sehr schnell wertvolle Erkenntnisse aus ihnen gewinnen. Die Plattform von DoubleCloud hilft den Kunden besonders dabei, Lösungen für die Datenanalyse und Pipelines mit Open-Source-Technologien wie ClickHouse und Apache Kafka in weniger als fünf Minuten aufzubauen.
Stefan Käser ist Solution Architect bei DoubleCloud.