Ursprünglich vom ehemaligen CTO von Pentaho geprägt, ist ein Data Lake eine kostengünstige Speicherumgebung, die normalerweise Petabytes an Rohdaten enthält. Im Gegensatz zu einem Data Warehouse kann ein Data Lake sowohl strukturierte als auch unstrukturierte Daten speichern und erfordert kein definiertes Schema zum Speichern von Daten, eine Eigenschaft, die als „Schema-on-Read" bekannt ist. Diese Flexibilität bei den Speicheranforderungen ist besonders nützlich für Data Scientists, Data Engineers und Entwickler, da sie für Data-Discovery-Übungen und maschinelle Lernprojekte auf Daten zugreifen können.
Ein kürzlicher Bericht Voice of the Enterprise (Link befindet sich außerhalb von ibm.com) von 451 Research stellte fest, dass fast „drei Viertel (71 %) der Unternehmen derzeit eine Data-Lake-Umgebung verwenden oder testen, oder dies in den nächsten 12 Monaten planen, und 53 % der Befragten sind bereits im Einsatz oder POC." Die Befragten in diesem Bericht heben geschäftliche Agilität als einen der wichtigsten Vorteile ihrer Bereitstellungen hervor, die variieren können. Sie fanden auch heraus, dass Data Lakes normalerweise entweder in der Cloud oder „vor Ort" über die Rechenzentren einer Organisation gehostet werden.
Während die Anwender den Wert von Data Lakes erkennen, können einige von ihnen zum Opfer von Datensümpfen oder Datengruben werden. Ein Datensumpf ist das Ergebnis eines schlecht verwalteten Data Lake, d. h. es mangelt an angemessener Datenqualität und Data-Governance-Praktiken, um aufschlussreiche Erkenntnisse zu gewinnen. Ohne die richtige Aufsicht werden die Daten in diesen Repositories unbrauchbar. Datengruben hingegen ähneln Datensümpfen insofern, dass sie wenig geschäftlichen Nutzen bieten, aber die Quelle des Datenproblems in diesen Fällen unklar ist. Ebenso kann die Einbeziehung von Data-Governance- und Data-Science-Teams dazu beitragen, diese Gefahren zu vermeiden.
Während sowohl Data Lakes als auch Data Warehouses Daten speichern, hat jedes Repository seine eigenen Anforderungen an die Speicherung, was es zur idealen Wahl für verschiedene Szenarien macht. Beispielsweise benötigen Data Warehouses ein definiertes Schema, um bestimmte Datenanalyseanforderungen für Datenausgaben wie Dashboards, Datenvisualisierungen und andere Business-Intelligence-Aufgaben zu erfüllen. Diese Anforderungen werden in der Regel von Geschäftsanwendern und anderen relevanten Stakeholdern festgelegt, die die Berichtsergebnisse regelmäßig verwenden werden. Die zugrunde liegende Struktur eines Data Warehouse ist typischerweise als relationales System organisiert (d. h. in einem strukturierten Datenformat), das Daten aus transaktionalen Datenbanken bezieht. Data Lakes hingegen integrieren Daten sowohl aus relationalen als auch nicht relationalen Systemen, sodass Data Scientists strukturierte und unstrukturierte Daten in mehr Data-Science-Projekte integrieren können.
Jedes System hat auch seine eigenen Vor- und Nachteile. Beispielsweise sind Data Warehouses tendenziell leistungsfähiger, aber mit höheren Kosten verbunden. Data Lakes sind möglicherweise langsamer bei der Rückgabe von Abfrageergebnissen, haben aber niedrigere Speicherkosten. Darüber hinaus ist die Speicherkapazität von Data Lakes ideal für Unternehmensdaten.
Während die Akzeptanz sowohl für Data Lakes als auch für Data Warehouses mit dem Wachstum neuer Datenquellen nur zunehmen wird, führen die Einschränkungen beider Datenspeicher zu einer Konvergenz dieser Technologien. Ein Data Lakehouse verbindet die Kostenvorteile eines Data Lake mit der Datenstruktur und den Datenverwaltungsfunktionen eines Data Warehouse. Laut eines anderen Umfrageberichts (Link befindet sich außerhalb von ibm.com) von 415 Research: „Zwei Drittel der Unternehmen nutzen oder testen bereits eine Data-Lakehouse-Umgebung oder planen dies innerhalb von 12 Monaten." Darüber hinaus stellten sie fest, dass 93 % der Unternehmen, die sich für Data Lakes entschieden haben, auch planen, in den nächsten 12 Monaten ein Data Lakehouse einzuführen.
Data Lakes werden auch häufig in Verbindung gebracht mit Apache Hadoop, ein Open-Source-Software-Framework, das eine kostengünstige, zuverlässige verteilte Verarbeitung für die Speicherung großer Datenmengen bietet. Sie wurden traditionell vor Ort bereitgestellt, aber wie im Bericht von 451 Research angegeben, wechseln Anwender schnell zu Cloud-Umgebungen, da diese den Endbenutzern mehr Flexibilität bieten. Im Gegensatz zu On-Premise-Bereitstellungen ermöglichen Cloud-Speicheranbieter den Benutzern, nach Bedarf große Cluster einzurichten, wobei nur die Zahlung für den angegebenen Speicher erforderlich ist. Wenn Sie also zusätzliche Rechenleistung benötigen, um einen Job in wenigen Stunden statt in wenigen Tagen auszuführen, können Sie dies ganz einfach auf einer Cloud-Plattform tun, indem Sie zusätzliche Rechenknoten erwerben. Forrester-Forschung (Link befindet sich außerhalb von ibm.com) berichtet, dass Unternehmen, die Cloud-Data-Lakes gegenüber lokalen Data Lakes verwenden, Einsparungen von etwa 25 % erzielen.
Innerhalb von Hadoop speichert und repliziert Hadoop Distributed File System (HDFS) Daten auf mehreren Servern, während Yet Another Resource Negotiator (YARN) bestimmt, wie Ressourcen auf diesen Servern zugewiesen werden. Sie können dann Apache Spark verwenden, um einen großen Speicherplatz für die Datenverarbeitung zu schaffen, sodass fortgeschrittenere Benutzer über Schnittstellen mit Python, R und Spark SQL auf Daten zugreifen können.
Da das Datenvolumen exponentiell wächst, dienen Data Lakes als wesentlicher Bestandteil der Datenpipeline.
Da Data Lakes in erster Linie für ihre Fähigkeit genutzt werden, riesige Mengen an Rohdaten zu speichern, muss der Geschäftszweck der Daten nicht unbedingt von Anfang an definiert werden. Im Folgenden finden Sie zwei Hauptanwendungsfälle für Data Lakes:
- Proof of Concepts (POCs): Data-Lake-Speicherung ist ideal für Proof-of-Concept-Projekte. Ihre Fähigkeit, verschiedene Arten von Daten zu speichern, ist besonders vorteilhaft für maschinelle Lernmodelle und bietet die Möglichkeit, sowohl strukturierte als auch unstrukturierte Daten in Vorhersagemodelle einzubeziehen. Dies kann für Anwendungsfälle wie die Textklassifizierung nützlich sein, da Datenwissenschaftler hierfür keine relationalen Datenbanken verwenden können (zumindest nicht ohne die Daten vorzuverarbeiten, um Schemaanforderungen zu erfüllen). Data Lakes können auch als Sandbox für andere Big-Data-Analytics-Projekte fungieren. Dies kann von der groß angelegten Dashboard-Entwicklung bis hin zur Unterstützung von IoT-Apps reichen, die normalerweise Echtzeit-Streaming-Daten erfordern. Nachdem Zweck und Wert der Daten bestimmt wurden, können diese dann einer ETL- oder ELT-Verarbeitung zur Speicherung in einem nachgelagerten Data Warehouse unterzogen werden.
- Datensicherung und -wiederherstellung: Hohe Speicherkapazität und niedrige Speicherkosten ermöglichen es Data Lakes, als Speicheralternative für Disaster-Recovery-Vorfälle zu fungieren. Sie können auch für Datenaudits zur Durchsetzung der Qualitätssicherung von Vorteil sein, da die Daten in ihrem nativen Format (d. h. ohne Transformationen) gespeichert werden. Dies kann besonders nützlich sein, wenn einem Data Warehouse die entsprechende Dokumentation zu seiner Datenverarbeitung fehlt, sodass Teams die Arbeit früherer Dateneigentümer gegenprüfen können.
Da Daten in einem Data Lake nicht unbedingt einen unmittelbaren Zweck für die Speicherung erfordern, kann dies schließlich auch eine Möglichkeit sein, kalte oder inaktive Daten zu einem kostengünstigen Preis zu speichern, was zu einem späteren Zeitpunkt für behördliche Anfragen oder völlig neue Analysen nützlich sein kann.
Flexibler: Data Lakes können sowohl strukturierte, halbstrukturierte als auch unstrukturierte Datensätze aufnehmen, was sie ideal für fortgeschrittene Analyseprojekte und maschinelle Lernprojekte macht.
Kosten: Da Data Lakes nicht so viel Planung im Voraus erfordern, um die Daten aufzunehmen (z. B. Schema- und Transformationsdefinition), muss weniger Geld in Personal investiert werden. Darüber hinaus sind die tatsächlichen Speicherkosten von Data Lakes im Vergleich zu anderen Speicherorten wie Data Warehouses niedriger. Dadurch können Unternehmen ihre Budgets und Ressourcen über Datenmanagement-Initiativen hinweg effektiver optimieren.
Skalierbarkeit: Data Lakes können Unternehmen auf verschiedene Weise bei der Skalierung unterstützen. Die Self-Service-Funktionalität und die Gesamtspeicherkapazität machen Data Lakes im Vergleich zu anderen Speicherdiensten skalierbarer. Darüber hinaus bieten Data Lakes eine Sandbox für Mitarbeiter, um erfolgreiche POCs zu entwickeln. Sobald sich ein Projekt in kleinerem Maßstab bewährt hat, ist es einfacher, diesen Workflow durch Automatisierung in größerem Maßstab zu erweitern.
Reduzierte Datensilos: Vom Gesundheitswesen bis zur Lieferkette erleben Unternehmen in verschiedenen Branchen Datensilos innerhalb ihrer Organisation. Da Data Lakes Rohdaten über verschiedene Funktionen aufnehmen, beginnen sich diese Abhängigkeiten von selbst zu beseitigen, da es keinen einzelnen Eigentümer mehr für einen bestimmten Datensatz gibt.
Verbessertes Kundenerlebnis: Auch wenn dieser Vorteil nicht sofort sichtbar ist, kann ein erfolgreicher Proof of Concept das allgemeine Benutzererlebnis verbessern und Teams in die Lage versetzen, die Customer Journey durch völlig neue, aufschlussreiche Analysen besser zu verstehen und zu personalisieren.
Obwohl Data Lakes eine Reihe von Vorteilen bieten, sind sie nicht ohne Herausforderungen. Einige von ihnen beinhalten:
- Leistung: Wenn das in einen Data Lake eingespeiste Datenvolumen wächst, geht dies zu Lasten der Leistung, die bereits langsamer ist als bei anderen alternativen Datenspeichersystemen.
- Governance: Während die Fähigkeit eines Data Lake, verschiedene Datenquellen aufzunehmen, Unternehmen einen Vorteil bei ihren Datenverwaltungspraktiken verschafft, erfordert sie auch eine starke Governance, um sie angemessen zu verwalten. Daten sollten mit relevanten Metadaten getaggt und klassifiziert werden, um Datenüberschwemmungen zu vermeiden, und diese Informationen sollten über einen Datenkatalog leicht zugänglich sein, was eine Self-Service-Funktionalität für weniger technisches Personal wie Business-Analysten ermöglicht. Schließlich sollten auch Schutzmaßnahmen eingerichtet werden, um Datenschutz- und Regulierungsstandards zu erfüllen. Dies kann Zugriffskontrollen, Datenverschlüsselung und mehr umfassen.
Erfahren Sie mehr über die Partnerschaft von IBM und Cloudera zur Bereitstellung einer Unternehmensdatenplattform für die Hybrid-Cloud.
Lernen Sie die Best Practices kennen, um Qualität, Zugänglichkeit und Sicherheit von Daten als Grundlage einer KI-zentrierten Datenarchitektur zu gewährleisten.
Erfahren Sie, wie die State Bank of India (Staatsbank von Indien) mehrere IBM-Lösungen zusammen mit der IBM® Garage-Methode verwendet hat, um eine umfassende Online-Banking-Plattform zu entwickeln.