Suchen

Definition Was ist ETL (Extract, Transform, Load)?

| Autor / Redakteur: Dipl.-Ing. (FH) Stefan Luber / Nico Litzel

Beim ETL-Prozess handelt es sich um mehrere Einzelschritte, durch die sich Daten aus verschiedenen Datenquellen per Extrahieren und Aufbereiten in ein Data Warehouse integrieren lassen. Der Prozess kommt häufig zur Verarbeitung großer Datenmengen im Big-Data- und Business-Intelligence-Umfeld zum Einsatz.

Firma zum Thema

(Bild: © aga7ta - stock.adobe.com)

Die Abkürzung ETL steht für die drei englischen Begriffe Extract, Transform und Load. Im Deutschen bedeuten sie Extrahieren, Transformieren und Laden. ETL beschreibt einen Prozess aus mehreren Einzelschritten, mit dem sich Daten aus verschiedenen Quellen in eine Datenbank oder ein Data Warehouse integrieren lassen. Ziel ist es, die integrierten Daten für die weitere Verarbeitung vorzubereiten und bereitzustellen.

Häufig kommt der ETL-Prozess im Umfeld von Big-Data- und Business-Intelligence-Anwendungen zum Einsatz. Besonders die Verarbeitung großer Datenmengen profitiert von der strukturierten ETL-Vorgehensweise. Sind Informationen auf verschiedenen Subsystemen verteilt, liegen redundant vor oder haben eine unterschiedliche Struktur, ist die Anwendung des ETL-Prozesses sinnvoll. Während des Prozesses erfolgt die Zusammenführung und Aufbereitung der heterogen strukturierten Daten verschiedener Quellen. Die Qualität der Daten wird gesichert und ihre Konsistenz im Data Warehouse hergestellt.

Für Anwendungen im Big-Data-Umfeld ist es wichtig, dass die ETL-Prozessschritte mit hoher Geschwindigkeit und geringer Latenzzeit ablaufen. Führende Hersteller von Datenbankmanagementsystemen und Big-Data-Anwendungen, wie IBM, SAP, Oracle oder Microsoft, bieten Produkte, die den ETL-Prozess unterstützen. Zahlreiche ETL-Tools aus dem Open-Source-Umfeld sind ebenfalls verfügbar.

Typische ETL-Einsatzbereiche

Typische Einsatzbereiche für ETL finden sich dort, wo Daten in großen Mengen verarbeitet, bereitgestellt und analysiert werden müssen. Beispiele für Anwendungsgebiete sind:

  • Datenspeicherung in einem Data Warehouse
  • Datenbereitstellung für BI-Anwendungen
  • Datenextraktion aus verteilten Datenbankumgebungen oder cloudbasierten Datenbanken
  • Migration von Daten zwischen verschiedenen Anwendungen
  • Replikation von Daten zu Sicherungs- und Redundanzzwecken

Die drei Hauptphasen des ETL-Prozesses

Der ETL-Prozess ist in drei verschiedene Phasen unterteilt. Diese Phasen sind:

  • Extract: Extraktion der Daten aus den verschiedenen Datenquellen
  • Transform: Transformation der Datenstruktur und Dateninhalte in das Format und Schema der Zieldatenbank
  • Load: Laden der transformierten Daten in die Zieldatenbank oder das Data Warehouse

Extraktion: Die Extraktion ist der erste Schritt des ETL-Prozesses. Hierbei erfolgt die Auswahl der Daten in den verschiedenen Quellsystemen und die Vorbereitung für die Transformationsphase. In den meisten Fällen extrahiert der Prozess nur Teilbereiche aus einzelnen Quelldatenbanken. Extraktionen finden regelmäßig statt, um das Data Warehouse kontinuierlich mit aktualisierten Daten zu versorgen. Auch ereignisgesteuerte oder anfragegesteuerte Extraktionen sind möglich.

Transformation: Der Extraktion schließt sich die Phase der Transformation an. Die gelieferten Daten werden an das Format und das Schema der Zieldatenbank angepasst. Der Transformationsprozess durchläuft wiederum mehrere Einzelschritte. Diese Einzelschritte können beispielsweise folgende sein:

  • Festlegung grundlegender Aspekte der Formatierung
  • Bereinigung fehlerhafter Daten
  • Prüfen auf ähnliche Informationen und Datenduplikate mit anschließendem Löschen und Ausschließen dieser Daten
  • Gruppieren, Sortieren und Aggregieren der Daten
  • finale Anpassung an Zielformate und Zielschemata

Laden: Der dritte und letzte Schritt ist das Laden der zuvor geprüften und angereicherten Daten. In diesem Schritt erfolgt die eigentliche Integration in die Zieldatenbank oder das Data Warehouse. Die Daten werden physisch zum Ziel verschoben, ohne die Datenbank beim Laden lange zu blockieren. Die Integrität der geladenen Daten ist sicherzustellen. Durch ausführliches Protokollieren und Logging sind sämtliche Änderungen im Zielsystem dokumentiert. Über die Protokollierung ist es möglich, bei Bedarf alte Datenstände wieder herzustellen.

Wichtige Eigenschaften eines ETL-Tools

Damit ETL-Tools die drei Prozessphasen vereinfachen, sollten sie folgende Eigenschaften und Funktionen besitzen:

  • viele Schnittstellen zu unterschiedlichen Datenbanksystemen
  • Kompatibilität mit verschiedenen Cloudmodellen
  • Unterstützung hybrider Cloud-Architekturen
  • benutzerfreundliche, intuitiv bedienbare Benutzeroberflächen
  • Möglichkeit der Visualisierung verschiedener ETL-Phasen
  • performante Verarbeitung großer Datenmengen

Tausch der Reihenfolge – vom ETL- zum ELT-Prozess

Nicht immer müssen die drei Einzelschritte in der beschriebenen Reihenfolge stattfinden. Die beiden letzten Schritte Transformation und Laden sind im Big-Data-Umfeld häufig vertauscht. Es handelt sich in diesem Fall um eine Variante von ETL, die das Kürzel ELT beschreibt. Der ELT-Prozess lädt zunächst die Daten in die Zieldatenbank, ohne sie zu transformieren. Alle gesammelten Daten liegen in ihrer Rohform vor. Es entsteht ein sogenannter Data Lake, der aus Daten verschiedenster Formate besteht. Die Transformation findet im Zielsystem mit speziellen Verfahren und Algorithmen erst für die durchzuführenden Auswertungen statt. Diese Vorgehensweise bietet den Vorteil, dass sich Daten zunächst im Zielsystem sammeln und für die Auswertungen bereitstellen lassen. Die bei den Rohdaten ausgeführten Transformationen liefern Ergebnisse, die zusammen mit den Rohdaten im gleichen Data Lake verbleiben.

(ID:45607950)

Über den Autor