Webinar am 22. Januar

Snowflake & SAP: Unlock the Power of Your Data to Unleash Enterprise Ready AI

Was ist ein Data Lake? Architektur und Anwendungsfälle

Data Lakes haben sich zu einem Eckpfeiler moderner Dateninfrastrukturen etabliert, die das Volumen, die Vielfalt und die Geschwindigkeit der heute verfügbaren Daten bewältigen können.

  • Übersicht
  • Was ist ein Data Lake?
  • Data Lake im Vergleich zum Data Warehouse
  • Vorteile von Data Lakes
  • Was versteht man unter der Architektur von Data Lakes?
  • Unterstützte Datentypen
  • Datenlebenszyklus
  • Die Bedeutung von Data Lakes
  • Herausforderungen und Anwendungsfälle
  • Ressourcen

Übersicht

In einer Welt, in der sich Organisationen in zunehmendem Maße auf Daten stützen, ist der Bedarf an flexiblen, skalierbaren und kostengünstigen Lösungen für die Datenspeicherung und -Analytik so groß wie nie zuvor. Data Lakes haben sich zu einem Eckpfeiler moderner Dateninfrastrukturen etabliert, die das Volumen, die Vielfalt und die Geschwindigkeit der heute verfügbaren Daten bewältigen können.

Dieser Artikel untersucht nicht nur, was ein Data Lake ist, sondern geht auch auf die zugrunde liegende Architektur ein, die einen effektiven Betrieb mit großen Datenmengen sicherstellt.

Was ist ein Data Lake?

Ein Data Lake ist ein zentrales Repository, in dem Organisationen alle Arten von Daten – strukturierte, semistrukturierte und unstrukturierte – in ihrem Rohformat speichern können. Im Gegensatz zu herkömmlichen Datenbanken oder Data Warehouses benötigen Data Lakes keine vordefinierten Schemata oder Formatierungen vor der Speicherung. Das macht sie äußerst flexibel und agil.

Wichtige Merkmale:

  • Schema-on-Read: Daten werden bei ihrem Zugriff ausgewertet, nicht wenn sie erfasst werden
  • Unterstützung verschiedener Datentypen: von CSV-Dateien und JSON-Protokollen bis hin Bildern und Videos
  • Unterstützung mehrerer Sprachen: wie SQL, Spark und weitere
  • Skalierbar und kosteneffizient: basieren auf preiswertem Objektspeicher, oft in der Cloud
  • Für ein breites Anwenderspektrum: von Datenanalyst:innen zu Data Scientists und Data Engineers
  • Für den gesamten Datenlebenszyklus: von der Datenerfassung und -speicherung über die Verarbeitung und Transformation bis hin zu fortschrittlichen Analytics und KI.

Data Lake im Vergleich zum Data Warehouse

Ein Data Lake und ein Data Warehouse werden beide zum Speichern und Analysieren von Daten eingesetzt, aber sie unterscheiden sich in wichtigen Punkten.
 

  • Datenstruktur: In einem Data Lake werden unverarbeitete Rohdaten gespeichert, die keine vordefinierte Struktur haben. Das System verwendet einen „Schema-on-Read“-Ansatz, bei dem die Daten erst beim Zugriff für die Analyse organisiert werden. In einem Data Warehouse müssen die Daten vor der Speicherung bereinigt und umgewandelt werden, damit sie in ein vordefiniertes Schema passen. Dieser Prozess wird als „Schema-on-Write“ bezeichnet.

  • Datentypen: Ein Data Lake kann alle Datentypen aufnehmen, einschließlich unstrukturierter, semistrukturierter und strukturierter Daten. In herkömmlichen Data Warehouses werden hauptsächlich strukturierte Daten gespeichert, die für die Analyse vorbereitet sind.

  • Anwender:innen und Verwendungszweck: Data Warehouses werden häufig für Business Intelligence (BI) und Reporting optimiert und von Business-Analyst:innen genutzt. Data Lakes werden häufig von Data Scientists und Data Engineers für fortschrittliche Analytics und maschinelles Lernen auf einer größeren Vielfalt an Datentypen verwendet.

  • Hybrider Ansatz: Viele Organisationen kombinieren beide Systeme in einer „Lakehouse“-Architektur, um die Flexibilität eines Data Lake mit der Performance eines Data Warehouse zu verbinden.

Vorteile von Data Lakes

Ein Data Lake bietet viele Vorteile für Organisationen, die ihre Daten in großem Umfang auf moderne Weise verwalten und analysieren möchten.
 

  • Kosteneffiziente Speicherung: Data Lakes basieren auf kostengünstigem Objektspeicher, oft in der Cloud, was im Vergleich zu herkömmlichen Systemen zu geringeren Speicherkosten führt. So können große Datenmengen ohne vordefinierte Struktur kostengünstig gespeichert werden.

  • Skalierbarkeit für Big Data: Data Lakes sind darauf ausgelegt, das Volumen und die Vielfalt der heutigen Daten zu bewältigen, und können mühelos Petabytes an Daten unterstützen. Sie sind hochgradig skalierbar und können mit den Anforderungen Ihres Unternehmens mitwachsen.

  • Flexibilität für verschiedene Datentypen: Ein Data Lake kann jede Art von Daten aus jeder Quelle und mit jeder Geschwindigkeit erfassen, unabhängig davon, ob es sich um strukturierte, semistrukturierte oder unstrukturierte Daten handelt. Dieser „Schema-on-Read“-Ansatz sorgt für maximale Flexibilität bei der Datenexploration.

  • Unterstützung für fortschrittliche Analytics und KI: Ein Data Lake dient als flexible Datengrundlage für eine breite Palette von analytischen Workloads. Es unterstützt fortschrittliche Analytik, maschinelles Lernen und Echtzeitanalytik. Die Fähigkeit, Rohdaten in großen Mengen bereitzustellen, ist für das Training von KI- und ML-Modellen unerlässlich.

Was versteht man unter der Architektur von Data Lakes?

Während ein Data Lake das Konzept ist, bezieht sich die Data-Lake-Architektur auf die zugrunde liegende Struktur und die Komponenten, die ein effizientes Funktionieren des Data Lake ermöglichen. Es handelt sich um ein mehrschichtiges System zur Verwaltung der Erfassung, Speicherung, Verarbeitung, Erkennung, Governance und Nutzung von großen Datasets.

Kernkomponenten der Data-Lake-Architektur:

Schicht

Funktionalität

Erfassungsschicht

Bezieht Daten aus verschiedenen Quellen (Streaming, Batch, IoT, APIs)

Speicherschicht

Speichert Rohdaten im skalierbaren Objektspeicher

Metadaten- und Katalogisierungsschicht

Indiziert, kennzeichnet und organisiert Daten für die Auffindbarkeit

Verarbeitungsschicht

Übernimmt die Datenumwandlung mithilfe von Tools für die Batch- oder Echtzeit-Verarbeitung.

Zugriffsschicht

Ermöglicht Datenabfragen, Datenexploration und Analytik

Governance- und Sicherheitsschicht

Verwaltet Datenschutz, Zugriffskontrollen, Audits und Compliance

Unterstützte Datentypen

Ein Data Lake ist für die Speicherung großer Datenmengen in ihrem ursprünglichen Rohformat ausgelegt und unterstützt daher eine große Vielfalt an Datentypen. Diese lassen sich grob in drei Haupttypen einteilen:

Strukturierte Daten

Diese Kategorie von Daten ist hochgradig organisiert und lässt sich übersichtlich in Zeilen und Spalten einordnen, ähnlich wie eine relationale Datenbank oder eine Tabellenkalkulation. Es gibt ein vordefiniertes Schema, das die Suche, Analyse und Verwaltung erleichtert. Beispiele für strukturierte Datentypen sind:

  • Relationale Datenbanktabellen: Daten, die in festen Spalten und Zeilen angeordnet sind
  • Kalkulationstabellen (z. B. CSV-Dateien): Tabellarische Daten mit definierten Spalten
  • Numerische Daten: Ganze Zahlen, Gleitkommazahlen, Dezimalstellen
  • Kategorisierte Daten: Labels oder Kategorien mit einer begrenzten Anzahl von Werten
  • Datums- und Uhrzeitdaten: Zeitstempel, Datumsangaben und Zeitwerte

Semistrukturierte Daten

Diese Daten folgen keiner starren tabellarischen Struktur, haben aber einige organisatorische Eigenschaften, wodurch sie leichter zu analysieren sind als unstrukturierte Daten. Sie enthalten oft Tags oder Markierungen, die semantische Elemente trennen und Hierarchien durchsetzen. Beispiele sind unter anderem:

  • JSON (JavaScript Object Notation): ein kompaktes Format mit Schlüssel-Wert-Paaren und verschachtelten Objekten
  • XML (eXtensible Markup Language): eine Markup-Sprache, die eine Reihe von Regeln für die Kodierung von Dokumenten in einem für Menschen und Maschinen lesbaren Format definiert
  • CSV („comma separated values“) mit komplexen Strukturen: ist zwar grundsätzlich strukturiert, kann aber auch semistrukturiert sein, mit einer unterschiedlichen Anzahl von Spalten oder verschachtelten Daten innerhalb von Feldern
  • Protokolldateien: enthalten oft Zeitstempel, Ereignistypen und Meldungen, die geparst werden können
  • NoSQL-Datenbanken: Dokumente oder Schlüsselwertspeicher, bei denen das Schema zwischen den Einträgen variieren kann
  • HTML (HyperText Markup Language): obwohl es hauptsächlich für Webseiten gedacht ist, enthält es strukturierte Elemente und Daten
  • YAML (YAML Ain't Markup Language™): ein für Menschen verständlicher Daten-Serialisierungsstandard für alle Programmiersprachen

Unstrukturierte Daten

Diese Daten haben kein vordefiniertes Format und keine vordefinierte Organisation, was ihre Analyse mit herkömmlichen Methoden erschwert. Um Erkenntnisse zu gewinnen, sind oft spezielle Tools und Techniken wie die Verarbeitung natürlicher Sprache oder maschinelles Lernen erforderlich. Beispiele für unstrukturierte Datentypen sind:

  • Textdateien: Dokumente (.txt, .doc, .pdf), E-Mails, Social-Media-Beiträge
  • Bilddateien: JPEG, PNG, GIF
  • Audiodateien: MP3, WAV
  • Videodateien: MP4, AVI, MOV
  • Sensordaten: Datenströme von IoT-Geräten, die möglicherweise keine einheitliche Struktur haben
  • Binärdateien: Ausführbare Dateien, proprietäre Datenformate

Die Fähigkeit, all diese verschiedenen Datentypen in ihrem nativen Format zu speichern und zu verarbeiten, ist ein wichtiges Merkmal und ein Vorteil eines Data Lake. Dieser „Schema-on-Read“-Ansatz sorgt für Flexibilität und versetzt Data Scientists und Analyst:innen in die Lage, Daten auf verschiedene Weise zu untersuchen und zu analysieren, ohne den Zwängen einer vordefinierten Struktur unterworfen zu sein.

Datenlebenszyklus

In einem Data Lake beschreibt der Datenlebenszyklus die Phasen, welche die Daten von ihrer Erstellung oder Erfassung bis zu ihrer Archivierung oder Löschung durchlaufen. Es handelt sich um einen kontinuierlichen Prozess, der dazu beiträgt, dass die Daten während ihrer gesamten Existenz innerhalb des Data Lake effektiv verwaltet, genutzt und kontrolliert werden. Hier ein Überblick über den typischen Lebenszyklus von Daten in einem Data Lake – mit dem Hinweis, dass spezifische Implementierungen variieren können:

1. Datenerfassung: Dies ist die erste Phase, in der Daten aus verschiedenen Quellsystemen in den Data Lake eingebracht werden. Diese Quellen können vielfältig sein, einschließlich strukturierter Datenbanken, semistrukturierter Protokolle, unstrukturierter Dokumente, Streaming-Daten von IoT-Geräten, Social Media Feeds und mehr. Das Hauptmerkmal der Datenerfassung in einem Data Lake ist häufig die „Erfassung im Ist-Zustand“, d. h. die Daten werden üblicherweise in ihrem nativen Rohformat ohne nennenswerte Umwandlung oder Schemadefinition im Vorfeld geladen. Auf diese Weise entsteht ein Maximum an Flexibilität für zukünftige Analysen. Zu den Tools und Prozessen, die in dieser Phase zum Einsatz kommen, gehören das Laden von Batches, das Erfassen von Echtzeit-Streams und Datenkonnektoren.

2. Datenspeicherung und Persistenz: Nach der Erfassung werden die Rohdaten im Data Lake gespeichert. Die Architektur nutzt häufig verteilte Speichersysteme wie HDFS (Hadoop Distributed File System) oder Cloud-basierte Objektspeicher (z. B. Amazon S3, Azure Data Lake Storage, Google Cloud Storage). Die Daten bleiben in ihrem ursprünglichen Format erhalten und bilden so die Grundlage für verschiedene Analyseansätze. Die Skalierbarkeit und Kosteneffizienz der Speicherschicht sind entscheidend für die Handhabung der potenziell riesigen Datenmengen in einem Data Lake. Je nach Häufigkeit des Datenzugriffs und den Aufbewahrungsrichtlinien können verschiedene Speicherschichten eingesetzt werden.

3. Verarbeitung und Umwandlung von Daten: In dieser Phase werden die Rohdaten für die Analyse und die Nutzung vorbereitet. Je nach dem spezifischen analytischen Anwendungsfall können die Daten auf verschiedene Weise umgewandelt werden, z. B. durch Bereinigung, Filterung, Zusammenführung, Aggregation und Anreicherung. An diesem Punkt kommt „Schema-on-Read“ ins Spiel – das Schema kommt zur Anwendung, wenn die Daten für einen bestimmten Zweck verarbeitet werden, und nicht zum Zeitpunkt der Erfassung. In dieser Phase kommen verschiedene Verarbeitungs-Engines und Frameworks zum Einsatz, z. B. Spark, Hadoop MapReduce, Data-Warehouse-Tools, die mit dem Lake verbunden sind, und serverlose Compute-Services.

4. Datenexploration und -analyse: Hier untersuchen Data Scientists, Analyst:innen und geschäftliche Benutzer:innen die verarbeiteten Daten, um Muster zu entdecken, Erkenntnisse zu gewinnen und Geschäftsfragen zu beantworten. Sie können eine Vielzahl von Tools und Techniken einsetzen, darunter SQL-ähnliche Abfragen, Tools zur Datenvisualisierung, statistische Analysepakete und Algorithmen für maschinelles Lernen. Dank der Flexibilität des Data Lake können je nach den spezifischen Anforderungen verschiedene analytische Ansätze für dieselben Daten zur Anwendung kommen.

5. Datennutzung und Aktion: Die Erkenntnisse und verarbeiteten Daten werden dann von verschiedenen nachgelagerten Applikationen und Anwender:innen genutzt. Dazu gehören die Erstellung von Berichten und Dashboards, die Einspeisung von Daten in operative Systeme, die Bereitstellung von Echtzeitanwendungen oder die Unterstützung von Geschäftsentscheidungen. Die genutzten Daten können je nach der verarbeitenden Anwendung in verschiedenen Formaten vorliegen und über unterschiedliche Schnittstellen zugänglich sein.

6. Data Governance und Sicherheit: Während des gesamten Lebenszyklus sind Data Governance und Sicherheit von entscheidender Bedeutung. Dazu gehören die Definition und Durchsetzung von Richtlinien in Bezug auf Datenqualität, Metadatenmanagement, Datenherkunft, Zugriffskontrolle, Datenmaskierung und Einhaltung von Vorschriften. Eine wirksame Governance trägt dazu bei, dass die Daten im Data Lake vertrauenswürdig und sicher sind und ordnungsgemäß verwaltet werden.

7. Archivierung und Löschung von Daten: Wenn Daten altern und ihr Geschäftswert abnimmt, müssen sie möglicherweise aus Gründen der Compliance oder zur Optimierung der Speicherkosten archiviert werden. Nicht mehr benötigte Daten können gemäß definierten Aufbewahrungsrichtlinien gelöscht werden. Diese letzte Phase sorgt dafür, dass der Data Lake effizient und langfristig regelkonform ist.

Im Wesentlichen ist der Datenlebenszyklus in einem Data Lake auf Flexibilität und Anpassungsfähigkeit ausgelegt. So können Organisationen große Mengen unterschiedlicher Daten erfassen, sie nach Bedarf für bestimmte analytische Anwendungsfälle verarbeiten und wertvolle Erkenntnisse gewinnen, ohne dabei auf angemessene Governance und Sicherheit verzichten zu müssen. Das „Schema-on-Read“-Prinzip und die Trennung von Speicher und Rechenressourcen sind die Hauptmerkmale, durch die sich dieses System von herkömmlichen Data-Warehousing-Ansätzen unterscheidet.

Die Bedeutung von Data Lakes

Ob konzeptionell oder aus dem Blickwinkel der Architektur betrachtet, der Wert von Data Lakes liegt in ihrer Fähigkeit, moderne Datenanforderungen zu erfüllen. Die wichtigsten Vorteile von Data Lakes sind: 
 

  • Skalierbarkeit: mühelose Unterstützung von Petabytes an Daten
  • Flexibilität: Erfassung beliebiger Daten, aus beliebigen Quellen und mit beliebiger Geschwindigkeit
  • Kosteneinsparungen: geringere Speicherkosten im Vergleich zu herkömmlichen Systemen
  • Fortschrittliche Analytics: Datengrundlage für KI, maschinelles Lernen und Echtzeit-Analytik
  • Datendemokratisierung: umfassender Zugang zu Daten für technische und nicht-technische Teams

Die Entwicklung zum modernen Data Lake

Herkömmliche Data Lakes entwickeln sich zu modernen Data-Lake-Architekturen, die oft als „Lakehouses“ bezeichnet werden – hybride Systeme, die die flexible Speicherung von Data Lakes mit der strukturierten Abfrage und der Performance von Data Warehouses kombinieren.

Trends in der modernen Data-Lake-Architektur:
 

  • Cloud-native Bereitstellung
  • Integrierte Verarbeitungs-Engines
  • Integrierte Governance-Frameworks
  • Einheitliche Plattformen, die die Kluft zwischen Data Lake und Data Warehouse überbrücken

Herausforderungen und Anwendungsfälle für Data Lakes

Herausforderungen im Zusammenhang mit Data Lakes

  • Datenauffindbarkeit: Das Fehlen einer angemessenen Katalogisierung und Metadatenverwaltung macht das Auffinden und Verstehen der benötigten Daten für die Benutzer:innen schwierig.
  • Sicherheit und Governance: Die Einhaltung von Vorschriften und der Schutz sensibler Informationen in einem Data Lake erfordern robuste Sicherheits- und Governance-Maßnahmen, die aufgrund der Größe des Data Lake und der unterschiedlichen Datenquellen eine Herausforderung darstellen können.
  • Komplexität der Integration: Die vielfältige und oft unstrukturierte Natur der Datenquellen in Kombination mit der Größe des Data Lake erfordert ausgefeilte und moderne Tools, um zu verhindern, dass ein unüberschaubarer und unzugänglicher „Datensumpf“ entsteht.

Anwendungsfälle

  • Pipelines für maschinelles Lernen und KI-Training
  • Echtzeit-Datenverarbeitung und -Analytik
  • Langzeitspeicherung und Datenarchivierung
  • Konsolidierung von Unternehmensdaten
  • Business Intelligence und Reporting
  • Fortschrittliche Analytik und KI
  • Prädiktive Analytik
  • Datenexploration und Trendanalyse
  • Kunden- und Marketingerlebnisse: Customer 360