Data Warehouse vs Data Lake: Der Unterschied einfach erklärt

Oft ist nicht ganz eindeutig klar, wo der Unterschied zwischen einem Data Warehouse und einem Data Lake liegt. Daher möchten wir in einfacher Art und Weise erklären, wie sich Data Warehouse und Data Lake voneinander abgrenzen und wie beide Infrastrukturkonzepte eingesetzt werden.

Infografik Data Warehouse vs. Data Lake

Infografik Data Warehouse vs. Data Lake
Infografik Data Warehouse vs. Data Lake

Data Warehouse: Definition und Vor- und Nachteile

Ein Data Warehouse (DWH) ist eine aufbereitete, strukturierte (tabularisch) erfasste Datenquelle. Im einfachsten Fall eine SQL-Datenbank, die mindestens einen Datensatz beinhaltet. Auf Enterprise-Level nimmt ein solches Warehouse selbstverständlich schnell größere Ausmaße ein, so dass es ganze Business Intelligence Abteilungen gibt, die sich nur mit dem Business Warehouse beschäftigen.

Dadurch, dass bei einem Data Warehouse die Daten in strukturierter Form abgespeichert werden, ergeben sich einige Vor- und Nachteile. Um ein DWH zu pflegen, muss im ersten Schritt die Struktur, das sogenannte Schema, festgelegt werden. Diese Vorgehensweise nennt sich Schema-on-Write und bildet die Basis für zu konsolidierende Daten: Wie sieht eine Zeile aus, welche Attribute (Spalten) beinhaltet jede Zeile, welche Daten sind zu erwarten. Im Umkehrschluss heisst dies auch, dass nur diese Form von strukturierten Daten in ein DWH gespeichert werden können.

Folglich ist der Vorabinvest bei einem Data Warehouse hoch und die Flexibilität, neue Daten anzuschließen, relativ gering. Auf der anderen Seite ergeben sich dadurch auch Vorteile: Durch das klare Datenmodell ist eine hohe interne Konsistenz zu erwarten und einfache Analysen, wie im Business Reporting üblich, sind sehr schnell und einfach durchzuführen.

Eigenschaften eines Data Warehouses (Zusammenfassung):

  • Erfassung strukturierter Daten in meist tabularischem Format
  • Datenmodell vorab festgelegt (Schema on Write)
  • Geringe Flexibilität für neue Datenquellen
  • Hohe Robustheit, einfache Pflege
  • Geringe Skalierbarkeit
  • Unklare Verarbeitungsschritte (z.B. Datenqualität, Ausschlüsse, etc)
  • Geeignet für Business Analysts für KPI-Reporting

Data Lake: Definition und Vor- und Nachteile

Der Data Lake auf der anderen Seite ist entstanden, da nicht mehr nur strukturierte und vorbereitete Daten verarbeitet werden sollen, sondern sich die Bandbreite an Datentypen und Analysen erhöht hat. Somit bildet ein Data Lake ein Konglomerat an Datenbanken und anderen Datenspeicherungsstrukturen, um sowohl strukturierte als auch unstrukturierte Daten zu erfassen und in verschiedenen Verarbeitungsschritten (roh, verarbeitet, analysiert,..) zu speichern. 

Diese sehr hohe Flexibilität im Bezug auf zu erfassenden Datenquellen kommt entsprechend mit anderen Ansprüchen. Eine sehr hohe Governance, also die Kontrolle über gespeicherte Datensätze, deren Inhalte und Verarbeitungszustand, ist notwendig, damit der Data Lake nicht zum “Data Swamp” verkommt. Als Data Swamp wird ein ungepflegter Data Lake bezeichnet, in dem wild Daten ohne entsprechende Dokumentation gespeichert werden, so dass man den Überblick und ggf. Zugriff verliert. Weiterhin wird durch die Ermangelung eines fixen Datenmodells erst beim Auslesen der Daten die Inhalte genau erfasst (sog. Schema on read), was eine Fehlerquelle darstellt. 

Nichtsdestotrotz überwiegen bei einem Data Lake meist die Vorteile. Die sehr hohe mögliche Varianz an Datenquellen (z.B. RDBMS, Bilder, Videos, Text) und die Bereitstellung in möglichst roher Form erlaubt Data Scientists fortführende Analysen, die in einem DWH nicht möglich sind. Durch eine gute Dokumentation werden auch die Weiterverarbeitungsschritte durchsichtig, was zu besser Kollaboration und einem besseren Verständnis führt. Ein wichtiger Aspekt ist auch die Skalierbarkeit, die im Data Lake sehr gut gegeben ist im Vergleich zu klassischen Datenbanken (siehe auch Big Data). Zudem werden Daten in einen Data Lake repliziert, wodurch sich die Last (z.B. durch anspruchsvolle Machine Learning Algorithmen oder Data Mining) auf die Quellsysteme massiv verringert.

Bonusfrage: Kann ein Data Lake ein Data Warehouse beinhalten?

Oft kommt die Frage auf, ob ein Data Lake andere Datenbankstrukturen, wie zum Beispiel ein Data Warehouse, beinhalten kann. Die Antwort ist definitiv: Ja! Aus Sicht des Data Lakes ist ein DWH nichts anderes als ein Datensatz.

Eigenschaften eines Data Lakes (Zusammenfassung)

  • Erfassung von strukturierten und unstrukturierten Daten in vielen Formaten
  • Datenmodell wird beim Auslesen festgelegt (Schema on read)
  • Sehr hohe Flexibilität für neue Datenquellen
  • Sehr hoher Pflegebedarf, um nicht zum “Data Swamp” zu verkommen
  • Hohe Skalierbarkeit
  • Bei guter Dokumentation sehr klare Verarbeitungsschritte
  • Geeignet für Data Scientists für Künstliche Intelligenz & Machine Learning

Data Warehouse vs. Data Lake: Einfach erklärt

Nimmt man diese Information zusammen, gibt es eine sehr einfache Erklärung wie sich das Data Warehouse zum Data Lake verhält. Abstrahiert kann das Data Warehouse wie eine Excel-Datei auf dem Computer betrachtet werden, während der Data Lake einen Dateiordner darstellt. 

Das DWH enthält, so wie eine Exceldatei, sehr strukturiert Daten mit benannten Spalten in einem fixen Schema. Neue Einträge hinzufügen ist kein Problem, neue Spalten gestaltet sich je nach bereits vorhandenem Inhalt schwieriger. Wenn die Daten eingetippt und gespeichert wurden, sind die Originale nicht mehr auffindbar, daher muss man sich auf die Datei verlassen. Die Inhalte wiederum sind sehr einfach für bestimmte Anwendungsfälle zu nutzen: Visualisierungen oder einfache Rechenoperationen zur KPI-Berechnung sind sehr komfortabel.

Nimmt man nun den Data Lake im gleichen Beispiel, dann verhält sich dieser wie ein Dateiordner auf der Festplatte. Man kann eine Vielzahl an (originalen) Daten ablegen, ohne diese vorher formatieren, abtippen oder strukturieren zu müssen. Möchte man mit den Daten weiterarbeiten, muss man allerdings auch erst die Daten aufbereiten und kann nicht einfach Summen über Spalten ziehen. Hat diese Aufbereitung jedoch stattgefunden, kann man die Daten dann auch wieder im Ordner speichern. Selbst viele Excel Files – also Data Warehouses – kann man somit generieren und zur weiteren Verarbeitung im Ordner speichern.

Hoffentlich ist dieses einfache Beispiel so einleuchtend wie gedacht und erklärt den Unterschied zwischen Data Warehouse und Data Lake. Für Unternehmen macht es je nach Maturität des Data Driven Business Sinn, eines oder beide der Infrastrukturen einzusetzen. Ein DWH erlaubt einer Bandbreite an Nutzern einen schnellen Zugang zu strukturierten Daten zur Analyse, während ein Data Lake fortgeschrittenen Anwendern, zum Beispiel Data Engineers und Data Scientists, ermöglicht Machine Learning und andere Advanced Analytics Methoden anzuwenden.