Webdemo
Wave background

Die Datenmigration optimieren

Oftmals werden die Begriff ETL, ELT und DWH durcheinander geworfen. Was alle drei jedoch gemeinsam haben; sie beschreiben Bestandteile von moderner Datenintegration und -migration in Unternehmen mit Big-Data-Value. Bei solchen Betrieben handelt es sich also um herausgeforderte Datenbanken und deren Schnittstellen, die möglichst effizient große Mengen an Daten bereitstellen oder annehmen müssen.

Um also Sperrzeiten für den Abruf der Daten zu verringern, wird das sogenannte ETL eingesetzt. Das Akronym setzt sich aus den englischen Begriffen Extract, Transform und Load (zu Deutsch Extraktion, Transformation, Laden) zusammen. Diese drei Hauptfunktionen gliedern sich nun der Reihenfolge nach beispielsweise in die Prozesse des Data Warehouse (DWH) ein.

Die drei Kernverfahren beim ETL

Werden große Datenmengen verarbeitet, beispielsweise aus und für Datenbanken oder von einem ERP-System, helfen ETL-Prozesse bei einer strukturierten und effizienten Bewältigung. Je nachdem wie groß der Aufwand ist, und in welcher Form die Daten genutzt werden sollen, unterscheidet sich der Vorgang in ETL und ELT.

ETL-Extraktion

Im ersten Schritt, auch „Stage“ genannt, werden alle Quelldaten gefiltert. An dieser Stelle werden die Informationen nicht nur aus verschiedenen Dokument oder einer Datenbank gesiebt, sondern auch für den Lade- oder Transformationsprozess zusammengefasst. Die Informationsqualität unterscheidet sich zunächst stark untereinander, wenn die operativen Systeme, welche die Daten erzeugen, abweichende Datenstrukturen verfassen.

  • Für eine komplettes Abbild einer Datenbank zu erzeugen, z.B. für eine Erstbefüllung oder Wiederherstellung einer Datenbank, wird dieser ETL-Prozess statisch ausgeführt. 
  • Eine inkrementellen Extraktion hingegen liest lediglich die Änderungen zwischen aktuellen und vorigen Extraktionsprozessen (Ausgabe eines „Transaction-Logs“).
  • Werden Informationen synchron extrahiert, bleibt die Datenbank direkt aktuell. Es entsteht jedoch ein hohe, beanspruchte Netzwerkauslastung. 
  • Bei einer asynchronen ETL-Extraktion lassen sich Daten ressourcenschonender verarbeiten. Die Aktualität der Datenbank ist jedoch nicht direkt gewährleistet, da der Prozess mehr Zeit beansprucht.

ETL-Transformation

Abweichende Strukturen sollen normalisiert werden. Über den Transformationsprozess lassen sich die Daten bereinigen und gruppieren, sodass nur der erforderliche oder relevanteste Datenbestand ausgegeben wird. Deshalb bezeichnet sich diese Funktion auch als „Cleansing“. 

  • Informationen werden auf eine interne Vorgabe formatiert und strukturelle, aber auch inhaltliche Unterschiede, Fehler und Redundanzen werden aufgeräumt. 
  • Diese würden ansonsten die Abfragen und das Erstellen von personalisierten Reportings aus Datenbanken behindern. 
  • Datenbank-Experten sprechen dann von sogenannten Anomalien, die zu unvollständigen Informationen führen. Mit einer ordentlichen ETL-Transformation können Auswertungen ohne zusätzlichen Aufwand erstellt werden.
  • Daten werden eventuell auch angereichert, zusammengeführt, getaggt und feinsortiert. Wichtig ist dabei, dass die Informationsqualität gewahrt wird und vollständig vom ETL-Prozess durchgearbeitet wurde.

ETL-Ladevorgang

Nun werden die Daten abschließend vom „Stage“ in das Data Warehouse System oder in einen Operational Data Storage (ODS) geladen. Auch wenn Sperrzeiten unbeliebt sind, erfüllen sie für den ETL-Prozess eine wichtige Funktion. Sie sollen nämlich den Zugriff auf das DWH oder den ODS verhindern, damit keine Auswertungen während des Ladens erfolgen. Die Aktualität der Daten ist beispielsweise essentiell, wenn die Daten, anstatt an ein Repositorium, direkt an ein operatives System, wie ein BI- (Business Intelligence) oder ein OLAP-System, zurückgegeben werden.

ETL und ELT im Vergleich

Nimmt der Datenumfang während des ETL-Prozesses zu und sollen aktuelle Daten flexibel abgerufen werden können, zum Beispiel für individuelle Reportings oder für eine Übersicht der aus dem ERP erhobenen Leistungsparameter, lohnt sich die Umstellung zu einem ELT-Prozess. Wie auch die Buchstaben des Akronyms vertauschen sich nun die Teilfunktionen Loading und Transformation der Reihenfolge nach. 

  • Der Vorteil besteht darin, die Daten zuerst in die Datenbank zu laden und dann lokal im Zielsystem durch spezielle Algorithmen zu transformieren. 
  • Der Weg zwischen Extraktion und Bereitstellung der Daten und letztendlich die daraus resultierende Sperrzeit werden deutlich vermindert. 
  • Da es sich jedoch um eine Rohfassung des Datenbestands handelt, sprechen Experten beim Zielsystem eher von einem Data Lake als von einem Data Warehouse. 
  • Dieser „See“ erfordert einen besonderen Reinigungsprozess und führt dadurch zu mehr Aufwand, bevor er wirklich in alle operativen Systeme abfließen kann. 
  • Für schnelle Übersichten bei enormen Datenbeständen ist dieses Verfahren dennoch nach wie vor lohnenswert.

Für welche ETL-Tools entscheiden?

Damit ETL Datenbanken unterstützen kann, müssen einige Kriterien innerhalb der Software und im Unternehmen erfüllt sein. Nicht jedes ETL-Tool ist mit der internen Datenarchitektur oder den operativen Systemen kompatibel. Bevor also individuelle Anforderungen in einer Bedarfsanalyse ermittelt werden, sollten zunächst die wichtigsten Funktionen eines guten ETL-Tools bekannt sein. Darunter fassen sich

  • eine hohe Kompatibilität mit Cloud- und Hybrid-Datenbanken,
  • Schnittstellen für verschiedene Datenbanksysteme,
  • effiziente Datenverarbeitung für Big-Data-Umgebungen,
  • ein Fokus für Benutzerfreundlichkeit und leicht verständlichen Oberflächen und
  • Möglichkeiten, ETL-Prozesse zu visualisieren, um beispielsweise Sperrzeiten besser einschätzen zu können oder um bei Migrationsfehlern schneller zu reagieren.

Für wen ist ETL wichtig?

Wie zu Beginn erwähnt sind ETL-Prozesse in den Bereichen Big-Data oder Business Intelligence eine bedeutende Stütze. Unternehmen, die ETL-Strecken einsetzen, um ihre Daten zu organisieren, lassen sich in den unterschiedlichsten Branchen finden. Die Daten entspringen daher verschiedenen Quellen mit individuellen Herausforderungen für die Datenlager.