Ein Data Lake (deutsch: Datensee) ist ein Speichersystem für große Mengen roher Daten in ihrem ursprünglichen Format. Anders als ein Data Warehouse verlangt er keine feste Struktur beim Laden — die Daten werden so abgelegt, wie sie anfallen, und erst bei der Abfrage interpretiert.

Schema-on-Read: Struktur bei der Abfrage

Der Data Lake folgt dem Prinzip Schema-on-Read: Das Schema wird nicht vor dem Laden festgelegt, sondern erst beim Lesen auf die Daten angewendet. Das macht ihn extrem flexibel — beliebige Formate wie JSON, CSV, Parquet, Bilder oder Logs können nebeneinander liegen. Technisch basieren Data Lakes meist auf Object Storage wie Amazon S3, Azure Data Lake Storage oder Google Cloud Storage.

Geschichte und Abgrenzung

Der Begriff geht auf James Dixon zurück, der ihn 2011 als CTO von Pentaho prägte. Als Gegenmodell zum aufwendig modellierten Data Warehouse sollten im See zunächst alle Rohdaten gesammelt werden, um später daraus wertvolle Analysen zu schöpfen. Ohne Ordnung und Metadaten-Pflege droht jedoch der Abstieg zum sogenannten Datensumpf (Data Swamp) — ein Thema, das Datenqualität und Metadaten-Pflege adressieren. Die moderne Weiterentwicklung ist das Lakehouse, das die günstige Speicherung eines Data Lakes mit den Analysefähigkeiten eines Data Warehouses verbindet.

Praxis

  • Befüllung über ETL- oder ELT-Pipelines und Streaming-Verfahren wie Big Data-Frameworks
  • Ideal für Machine Learning, explorative Analysen und NoSQL-Datenquellen
  • Gegenstück zum strukturierten Datenbank-Betrieb in klassischen Systemen

Verwandte Grundlagen: Cloud Computing, Datenbank-Replikation, Redis, Docker.