Was ist ein Data Lake?

Data Lakes speichern große Datenmengen in einem nicht-hierarchischen Format.

Lernziele

Nach Lektüre dieses Artikels können Sie Folgendes:

  • Data Lake definieren
  • Verstehen, wie Data Lakes in der Objektspeicherung eingesetzt werden
  • Unterschied zwischen Data Lakes und Data Warehouses verstehen

Link zum Artikel kopieren

Was ist ein Data Lake?

Ein Data Lake ist ein Repository, das Daten in ihrem natürlichen (oder rohen) Format speichert. Es wird auch als Data Pool bezeichnet und ist ein Feature von Objektspeichern, einem Cloud-basierten Speichersystem, das für die Verarbeitung großer Mengen strukturierter und unstrukturierter Daten konzipiert ist.

Im Vergleich zu herkömmlichen, dateibasierten Speichersystemen sind Data Lakes nicht hierarchisch strukturiert. Diese Eigenschaft macht sie zu einer flexiblen und skalierbaren Option. Daten aus Data Lakes zu organisieren und abzurufen kann jedoch aufgrund der organisatorischen Struktur und der komplexen Preisgestaltung für ausgehende Daten langsam und kostspielig sein.

Wie werden Daten in Data Lakes gespeichert?

Um zu verstehen, wie Daten in Data Lakes gespeichert werden, muss man zunächst wissen, wie die Objektspeicherung funktioniert. Im Gegensatz zur herkömmlichen dateibasierten Speicherung, bei der die Daten in einer Hierarchie von Ordnern und Dateien gespeichert werden, werden bei der Objektspeicherung einzelne Daten (oder Objekte) am selben Ort gesammelt und mit benutzerdefinierten Metadaten versehen.

Diese Metadaten dienen zur Identifizierung einer Datei, wie z. B. Name, Typ, Größe oder eindeutige Bezeichner. Sie helfen Benutzern oder der App, Daten zu finden und abzurufen, ohne einem bestimmten Pfad von Ordner zu Ordner folgen zu müssen. Da Data Lakes für die Aufnahme großer Datenmengen konzipiert sind, können die Metadaten eines Objekts sehr detailliert sein, was die Suche beschleunigt.

Um den Unterschied zwischen hierarchischer und nicht-hierarchischer Datenspeicherung zu verdeutlichen, stellen Sie sich folgendes Szenario vor: Bob möchte Tausende von Schallplatten aufbewahren. Mit einem hierarchischen Speichersystem sortiert er Schallplatten nach Musikgenres in großen Fächern (oder Ordnern). Auf diese Weise kann er jedes Album schnell finden. Wenn er jedoch mehr Platten eines Genres erwirbt, könnte ihm der Platz im Fach ausgehen. Diese Methode ähnelt der dateibasierten Speicherung, bei der die Daten an einem bestimmten Ort organisiert und aufbewahrt werden müssen.

Im Gegensatz dazu könnte Bob bei einem nicht-hierarchischen Speichersystem alle seine Platten in einem Raum (oder Data Lake) in beliebiger Reihenfolge ablegen und jede Platte mit einem Genre-Etikett versehen. Bob könnte auf diese Weise zwar einzelne Platten langsamer identifizieren, aber er könnte viele weitere Platten zu seiner Sammlung hinzufügen, ohne sie in einem bestimmten Fach verstauen zu müssen. Diese Methode ähnelt der Objektspeicherung, bei der größere Datenmengen an einem Ort aufbewahrt werden.

Eine ausführliche Erläuterung dieses Prozesses finden Sie unter Was ist Objektspeicherung?

Was ist eine Data-Lake-Architektur?

Die Data-Lake-Architektur beschreibt die Prozesse und Tools, die zur Speicherung, Umwandelung, zum Zugriff und Schutz von Daten in einem Data Lake verwendet werden. Diese Architektur kann in der Cloud oder On-Premise angesiedelt sein und umfasst oft mehrere der folgenden Komponenten:

  • Datenquellen: Das ursprüngliche Format der Daten, ob strukturierte (d. h. Daten, die in eine tabellarische Struktur passen, wie SQL-Datenbanken), halb-strukturierte (d. h. Daten, die nicht ohne weiteres in eine tabellarische Struktur passen, wie z. B. HTML-Dateien), oder unstrukturiert (z. B. Videos, Audiodateien und Bilder).
  • Datenextraktion: Extrahieren, Laden, Transformieren (ELT) ist ein mehrstufiger Prozess, bei dem Daten von ihrer ursprünglichen Quelle in den Rohbereich des Data Lake verschoben und verändert werden, um sie besser nutzbar zu machen.
  • Data Ingestion und Speicherung: Die Methode, mit der Daten zu einem Data Lake hinzugefügt werden – entweder in Echtzeit (Daten werden bei ihrer Erfassung hinzugefügt) oder als Batch Ingestion (Datengruppen werden in regelmäßigen Abständen hinzugefügt). Unabhängig von der Importmethode werden alle Daten zunächst im Rohdatenbereich des Speichers gespeichert, d. h. sie werden in ihrem ursprünglichen, rohen Format in den Data Lake aufgenommen.
  • Datenpersistenz und Katalogisierung: Der Prozess des Hinzufügens von Metadaten zu Rohdaten, damit diese leichter zugänglich und abrufbar sind.
  • Datenverarbeitung: Verschiedene Umwandlungen von Rohdaten – einschließlich Datenbereinigung (Beseitigung von Ungenauigkeiten oder Unstimmigkeiten), Datennormalisierung (Neuformatierung von Daten, sodass alle Daten in der gleichen Form vorliegen), Datenanreicherung (Hinzufügen von Kontext oder erforderlichen Informationen) und Datenstrukturierung (Umwandlung halbstrukturierter oder unstrukturierter Daten in strukturierte Daten).
  • Datenherkunft: Der Prozess der Verfolgung von Daten von ihrem ursprünglichen, rohen Format bis zu ihrem umgewandelten Zustand.
  • Datensicherheit und -verwaltung: Verschiedene Methoden zur Gewährleistung von Datensicherheit und Zugriffskontrolle, Datenherkunft, Datenqualität sowie Datenanalyse und -prüfung.

Anwendungsfälle für Data Lakes

Data Lakes haben eine Vielzahl von Anwendungsmöglichkeiten. Sie können beispielsweise für Datenanalyse und -exploration, Verwaltung des Internet of Things (IoT), personalisierte Kundenerfahrungen, erweitertes maschinelles Lernen und vieles mehr genutzt werden. Auch für das Training von Modellen der künstlichen Intelligenz (KI) sind Data Lakes hilfreich, da diese Modelle oft sehr große Datensätze benötigen, um effektive Ergebnisse zu erzielen.

Stellen Sie sich folgendes Beispiel vor: Ein Reiseunternehmen möchte seinen Kunden maßgeschneiderte, automatisierte Reiseempfehlungen anbieten. Dazu kann es mithilfe eines Data Lake eine große Menge an Kundendaten zu gängigen Reisemustern, beliebten Reisezielen, Aufenthaltsdauer, Unterkunftsart und Aktivitäten erfassen. Anhand dieser Daten kann dann ein KI-Modell trainiert werden, um erweiterte Empfehlungen zu entwickeln, was im Idealfall zu zufriedeneren Kunden führt.

Was sind die Vorteile von Data Lakes?

  • Flexibilität: Data Lakes können Daten in jedem beliebigen Format speichern, ohne dass eine Dateikomprimierung oder Neuformatierung erforderlich ist.
  • Skalierbarkeit: Data Lakes können nahezu unbegrenzte Datenmengen verarbeiten. Das macht sie zu einer beliebten Wahl für Unternehmen, die große (und wachsende) Datenmengen verarbeiten und speichern müssen.
  • Durchsuchbarkeit: Data Lakes ermöglichen eine unkomplizierte Datenabfrage über hochgradig anpassbare und detaillierte Metadaten.
  • Einfachheit: Alle Daten werden in demselben Data Lake gespeichert, statt in komplexen hierarchischen Konfigurationen.

Was sind die Grenzen von Data Lakes?

  • Probleme mit der Verlässlichkeit: Data Lakes können zu Datensümpfen werden, wenn zu viele Daten ohne wirksame Kategorisierung und Umwandlung zu einem Repository hinzugefügt werden. Dadurch wird der Data Lake unzuverlässig und schwer nutzbar.
  • Langsame Performance: Obwohl Data Lakes für den Betrieb in großem Maßstab ausgelegt sind, können zu große Datenmengen (oder ineffektive Abfrage-Engines) die Abfragezeiten und die Gesamt-Performance beeinträchtigen.
  • Gebühren für ausgehende Daten: Der Daten-Egress (oder Datenübertragung) ist der Prozess des Abrufs von Daten vom Cloud-Speicheranbieter eines Unternehmens. Häufig stellen Cloud-Anbieter diese Übertragungen in Rechnung, und die Gebühren können je nach der Menge der zu übertragenden Daten in die Höhe schnellen.

Unterschied zwischen Data Lakes und Data Warehouses

Data Lakes sind große Repositorys mit strukturierten und unstrukturierten Daten. Ihr Hauptvorteil besteht darin, dass sie in großem Maßstab kosteneffizient arbeiten können. Allerdings können ihre Größe und die Komplexität ihrer Kategorisierungssysteme sie im Vergleich zu anderen Arten der Datenverarbeitung und -speicherung ineffizient machen.

Wie Data Lakes sind auch Data Warehouses große Datenspeicher. Anders als Data Lakes speichern sie jedoch nur strukturierte Daten und verwenden herkömmliche Dateihierarchien, um Daten zu organisieren, zu speichern und abzurufen. Diese Architektur ermöglicht einen schnelleren Datenabruf und eine höhere Performance, obwohl sie bei einer Skalierung exponentiell teurer sein kann als ein Data Lake.

Einige Cloud-Anbieter bieten einen hybriden Ansatz namens Data Lakehouses an. Dieser Ansatz kombiniert die Kernfunktionen und Vorteile von Data Lakes und Warehouses. Anstatt strukturierte und unstrukturierte Daten in getrennten Systemen aufzubewahren, können Unternehmen Data Lakehouses nutzen, um alle Arten von Daten zu verarbeiten und zu speichern. Sie bieten einerseits die organisatorischen Fähigkeiten und die hohen Performance eines Data Warehouse und andererseits de kosteneffizienten Skalierbarkeit eines Data Lakes. Dieser Ansatz ermöglicht es Unternehmen auch, durch automatisierte Data-Governance- und Compliance-Tools eine größere Datenintegrität und -zuverlässigkeit zu gewährleisten.

Unterstützt Cloudflare Data Lakes?

Cloudflare R2 ist eine Objektspeicherlösung ohne Egress-Gebühren. Unternehmen können damit ihre eigenen Data Lakes entwickeln. Unterstützt durch das globale Netzwerk von Cloudflare trägt R2 dazu bei, eine optimale Langlebigkeit und Zuverlässigkeit der Daten zu gewährleisten. Dafür werden Objekte mehrfach repliziert, sodass sie leicht zugänglich und äußerst resistent gegen regionale Ausfälle und Datenverluste bleiben.

Erfahren Sie mehr über R2 und wie eine Connectivity Cloud die Egress-Gebühren beim Verschieben von Daten zwischen den Clouds senkt.