Data Lake

Ein Data Lake (wörtlich übersetzt: „Datensee“) ist in der Wirtschaftsinformatik ein System oder ein Repository von Daten, die im Rohdatenformat gespeichert sind, normalerweise Blobs oder Dateien. Ein Data Lake ist in der Regel ein einziger Speicher für alle Unternehmensdaten, einschließlich Rohkopien von Quellsystemdaten und transformierten Daten, die für Aufgaben wie Berichterstellung, Visualisierung, erweiterte Analysen und maschinelles Lernen verwendet werden. Ein Data Lake kann strukturierte Daten aus relationalen Datenbanken (Zeilen und Spalten), aus CSV-, XML- oder JSON-Formaten oder unstrukturierte Daten zum Beispiel E-Mails, Dokumente, PDF-Dateien und binäre Daten (Bild, Ton, Speicherabbilder) enthalten.
Data Lakes werden in Branchen wie Einzelhandel, Bankwesen oder Hotel- und Gastgewerbe und sogar in der Reisebranche verwendet, für die Verfolgung und die Vorhersage von Kundenvorlieben und die Verbesserung der gesamten Kundenerfahrung.[1]
Architektur
[Bearbeiten | Quelltext bearbeiten]Ein typischer Data Lake besteht aus mehreren Kernkomponenten:
- Speicherebene: Eine hochskalierbare Plattform, die strukturierte, semi-strukturierte und unstrukturierte Daten in Rohform aufnehmen kann. Moderne Implementierungen basieren häufig auf Cloud-Speichern wie Amazon S3, Azure Data Lake Storage oder Google Cloud Storage.[2]
- Ingestion-Ebene: Prozesse, die Daten in den See laden, entweder in Batches oder in Echtzeit, etwa mit Apache Kafka, Apache NiFi oder cloud-nativen Diensten.
- Metadaten und Katalogisierung: Systeme, die Datensätze, Schemata und Datenherkunft dokumentieren. Beispiele sind Apache Atlas oder Amundsen. Ohne geeignete Metadaten droht ein sogenannter Datensumpf.
- Verarbeitung und Analyse: Frameworks wie Apache Spark, Presto oder Databricks werden häufig zur Verarbeitung und Analyse großer Datenmengen eingesetzt.
- Governance und Sicherheit: Mechanismen für Zugriffskontrolle, Verschlüsselung, Protokollierung sowie die Einhaltung von Datenschutzbestimmungen wie der DSGVO.
Herausforderungen
[Bearbeiten | Quelltext bearbeiten]Obwohl Data Lakes Flexibilität und Skalierbarkeit bieten, ergeben sich verschiedene Herausforderungen:
- Datenqualität und Auffindbarkeit: Ohne Metadatenmanagement und Governance verkommen Data Lakes schnell zu schwer nutzbaren Datensümpfen.[3]
- Leistungsprobleme: Abfragen über große Mengen unstrukturierter Daten können zu schlechter Performance führen, wenn keine Optimierungen erfolgen.
- Kostenmanagement: Umfangreiche Speicher- und Verarbeitungskapazitäten können zu unerwartet hohen Betriebskosten führen.
- Komplexität: Die Umsetzung von Governance-, Sicherheits- und Compliance-Prozessen über heterogene Datensätze hinweg ist anspruchsvoll.
- Fachkräftemangel: Für den Betrieb sind Kenntnisse in verteilten Systemen, Datenbanksystemen und Cloud-Infrastrukturen erforderlich, die am Markt oft knapp sind.
Neben den Daten werden auch generische Analysemethoden abgelegt, sodass diese ebenfalls für die zentral gespeicherten Daten zur Verfügung stehen und nicht im Vorfeld jedes Analyseprozesses zusammengetragen werden müssen.[4] Daher benötigen Data Lakes normalerweise viel mehr Speicherkapazität als Data Warehouses. Darüber hinaus sind unverarbeitete Rohdaten formbar, lassen sich schnell für die unterschiedlichsten Zwecke analysieren und sind ideal für maschinelles Lernen.
Ein Data Swamp (wörtlich übersetzt: „Datensumpf “) ist – scherzhaft – ein nicht verwalteter Data Lake, der entweder für die vorgesehenen Benutzer nicht zugänglich ist oder wenig Wert bietet. Datensümpfe entstehen, wenn keine angemessenen Datenqualitäts- und Data-Governance-Maßnahmen durchgeführt werden.
Unterschiede zum Data Warehouse
[Bearbeiten | Quelltext bearbeiten]Im Data-Warehouse-Konzept werden bestimmte Daten nach dem ETL-Schema aus den Quellsystemen extrahiert, transformiert und in das zentrale Data Warehouse geladen.
Dagegen werden im Data-Lake-Konzept alle Daten aus den Quellsystemen geladen. Es werden keine Daten abgewiesen. Die Daten werden in einem nicht oder fast nicht transformierten Zustand gespeichert. Erst zur Datenvisualisierung oder Datenanalyse werden die Daten aufbereitet.[5] Der Vorteil der strukturiert auswertbaren Daten des Data Warehouses wird zu Gunsten einer höheren Flexibilität aufgegeben. Die Anforderung an die Kenntnis der Datenstruktur steigen entsprechend.[6]
Beispiele
[Bearbeiten | Quelltext bearbeiten]Das Konzept der Data Lakes stößt zunehmend auf wissenschaftliches Interesse. Der Personal DataLake an der Cardiff Universität beispielsweise ist eine neue Art von Data Lake, der darauf abzielt, Big Data einzelner Nutzer zu verwalten, indem er einen zentralen Punkt für die Sammlung, Organisation und gemeinsame Nutzung persönlicher Daten bietet.[7]
Ein früherer Data Lake (Hadoop 1.0) hatte mit seiner stapelorientierten Verarbeitung (Map Reduce) nur begrenzte Möglichkeiten und war das einzige mit ihm verbundene Verarbeitungsparadigma. Um mit dem Data Lake zu interagieren, war es notwendig, über Java-Fähigkeiten im Umgang mit Map Reduce sowie über hochwertige Tools wie Apache Pig, Apache Spark und Apache Hive zu verfügen (die ursprünglich alle stapelorientiert waren).
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Aufbau eines besseren Data Lake. Abgerufen am 15. Januar 2021.
- ↑ Kleppmann, Martin: Designing Data-Intensive Applications. O’Reilly Media, 2017.
- ↑ Gartner: Market Guide for Data Lakes. 2020.
- ↑ Freiknecht, Jonas: Big Data in der Praxis : Lösungen mit Hadoop, HBase und Hive ; Daten speichern, aufbereiten, visualisieren. Hanser, München 2014, ISBN 978-3-446-43959-7, S. 21.
- ↑ Chris Campbell: Top Five Differences between Data Lakes and Data Warehouses. Archiviert vom (nicht mehr online verfügbar) am 15. September 2017; abgerufen am 20. Februar 2020 (amerikanisches Englisch). Info: Der Archivlink wurde automatisch eingesetzt und noch nicht geprüft. Bitte prüfe Original- und Archivlink gemäß Anleitung und entferne dann diesen Hinweis.
- ↑ Data Lake vs. Data Warehouse: Wichtige Unterschiede – Talend. Abgerufen am 20. Februar 2020.
- ↑ Walker, Coral; Alrehamy, Hassan: Personal Data Lake with Data Gravity Pull. 2015, ISBN 978-1-4673-7183-4, S. 160–167, doi:10.1109/BDCloud.2015.62 (semanticscholar.org).