In den letzten Jahren haben wir bei Databricks ein neues Datenmanagementparadigma beobachtet, das sich eigenständig über viele Kunden und Anwendungsfälle hinweg entwickelt hat: Lakehouse. In diesem Beitrag beschreiben wir dieses neue Paradigma und seine Vorteile gegenüber früheren Ansätzen.
Data Warehouses haben eine lange Geschichte im Bereich der Anwendungen für Entscheidungsfindung und Business Intelligence. Seit ihrer Einführung in den späten 1980er Jahren entwickelte sich die Data-Warehouse-Technologie kontinuierlich weiter und MPP-Architekturen führten zu Systemen, die größere Datenmengen verarbeiten konnten. Doch während Warehouses für strukturierte Daten hervorragend geeignet waren, müssen sich viele moderne Unternehmen mit unstrukturierten Daten, semistrukturierten Daten und Daten mit hoher Vielfalt, Geschwindigkeit und großem Volumen auseinandersetzen. Data Warehouses sind für viele dieser Anwendungsfälle nicht geeignet und sicherlich nicht die kosteneffizienteste Lösung.
Als Unternehmen begannen, große Datenmengen aus vielen verschiedenen Quellen zu sammeln, stellten sich Architekten ein einziges System vor, das Daten für viele verschiedene Analyseprodukte und Workloads aufnehmen sollte. Vor etwa einem Jahrzehnt begannen Unternehmen mit dem Aufbau von Data Lakes – Repositories für Rohdaten in einer Vielzahl von Formaten. Data Lakes eignen sich zwar zur Speicherung von Daten, es fehlen ihnen jedoch einige wichtige Funktionen: Sie unterstützen keine Transaktionen, sie erzwingen keine Datenqualität und ihre mangelnde Konsistenz/Isolation macht es fast unmöglich, Anfügungen und Lesevorgänge sowie Batch- und Streaming-Jobs zu mischen. Aus diesen Gründen haben sich viele der Versprechen von Data Lakes nicht erfüllt, was in vielen Fällen zum Verlust vieler Vorteile von Data Warehouses geführt hat.
Der Bedarf an einem flexiblen Hochleistungs-Performance-System hat nicht nachgelassen. Unternehmen benötigen Systeme für verschiedene Datenanwendungen, einschließlich SQL-Analysen, Echtzeit-Monitoring, Data Science und Machine Learning. Die meisten der jüngsten Fortschritte im Bereich der KI bestanden in besseren Modellen zur Verarbeitung unstrukturierter Daten (Text, Bilder, Video, Audio), aber das sind genau die Arten von Daten, für die ein Data Warehouse nicht optimiert ist. Ein gängiger Ansatz ist die Verwendung mehrerer Systeme – ein Data Lake, mehrere Data Warehouses und andere spezialisierte Systeme wie Streaming-, Zeitreihen-, Graphen- und Bilddatenbanken. Eine Vielzahl von Systemen sorgt für Komplexität und, was noch wichtiger ist, für Verzögerungen, da Datenexperten zwangsläufig Daten zwischen verschiedenen Systemen verschieben oder kopieren müssen.
New systems are beginning to emerge that address the limitations of data lakes. A lakehouse is a new, open paradigm that combines the best elements of data lakes and data warehouses. Lakehouses werden durch ein neues Systemdesign ermöglicht: die Implementierung ähnlicher Datenstrukturen und Datenverwaltungs-Features wie in einem Data Warehouse direkt auf kostengünstigem Cloud-Speicher in offenen Formaten. They are what you would get if you had to redesign data warehouses in the modern world, now that cheap and highly reliable storage (in the form of object stores) are available.
Ein Lakehouse hat die folgenden Haupt-Features:
Dies sind die Key Merkmale von Lakehouses. Systeme auf Unternehmensebene erfordern zusätzliche Features. Tools für Sicherheit und Zugriffskontrolle sind Grundvoraussetzungen. Data-Governance-Funktionen wie Auditing, Datenaufbewahrung und Datenherkunft sind insbesondere angesichts der jüngsten Datenschutzbestimmungen unerlässlich geworden. Tools, die Data Discovery ermöglichen, wie z. B. Datenkataloge und Datennutzungsmetriken, werden ebenfalls benötigt. Mit einem Lakehouse müssen solche Unternehmens-Features nur für ein einziges System implementiert, getestet und verwaltet werden.
Lesen Sie den vollständigen Forschungsartikel über die Funktionsweise des Lakehouse.
Die Databricks Lakehouse Platform verfügt über die architektonischen Merkmale eines Lakehouse. Der Dienst Azure Synapse Analytics von Microsoft, der sich in Azure Databricks integriert, ermöglicht ein ähnliches Lakehouse-Muster. Andere verwaltete Dienste wie BigQuery und Redshift Spectrum verfügen über einige der oben genannten Lakehouse-Features, sind aber Beispiele, die sich hauptsächlich auf BI und andere SQL-Anwendungen konzentrieren. Unternehmen, die ihre eigenen Systeme aufbauen und implementieren möchten, haben Zugriff auf Open-Source-Dateiformate (Delta Lake, Apache Iceberg, Apache Hudi), die sich für den Aufbau eines lakehouse eignen.
Die Zusammenführung von Data Lakes und Data Warehouses in einem einzigen System bedeutet, dass Datenteams schneller agieren können, da sie Daten nutzen können, ohne auf mehrere Systeme zugreifen zu müssen. Der Grad der SQL-Unterstützung und der Integration mit BI-Tools ist bei diesen frühen Lakehouses im Allgemeinen für die meisten Enterprise Data Warehouses ausreichend. Materialisierte Ansichten und gespeicherte Prozeduren sind verfügbar, aber Benutzer müssen möglicherweise andere Mechanismen einsetzen, die nicht mit denen in herkömmlichen Data Warehouses gleichwertig sind. Letzteres ist besonders wichtig für "Lift-and-Shift-Szenarien", die Systeme erfordern, deren Semantik nahezu identisch mit der von älteren, kommerziellen Data Warehouses ist.
Wie sieht es mit der Unterstützung für andere Arten von Datenanwendungen aus? Nutzer eines Lakehouse haben Zugriff auf eine Vielzahl von Standard-Tools (Spark, Python, R, Machine Learning Libraries (MLlib)) für Nicht-BI-Workloads wie Data Science und Machine Learning. Datenexploration und -verfeinerung sind Standard für viele Analyse- und Data-Science-Anwendungen. Delta Lake ist darauf ausgelegt, dass Nutzer die Qualität der Daten in ihrem Lakehouse schrittweise verbessern können, bis diese zur Nutzung bereit sind.
Ein Hinweis zu den technischen Bausteinen. Während verteilte Dateisysteme für die Speicherebene verwendet werden können, kommen Objektspeicher in Lakehouses häufiger zum Einsatz. Objektspeicher bieten kostengünstigen, hochverfügbaren Speicher, der sich durch massiv parallele Lesevorgänge auszeichnet – eine wesentliche Anforderung für moderne Data Warehouses.
Das Lakehouse ist eine neue Datenverwaltung-Architektur, die die Dateninfrastruktur von Unternehmen radikal vereinfacht und Innovationen in einer Zeit beschleunigt, in der maschinelles Lernen dabei ist, jede Branche zu revolutionieren. In der Vergangenheit waren die meisten Daten, die in die Produkte oder die Entscheidungsfindung eines Unternehmens einflossen, strukturierte Daten aus operativen Systemen, während heute viele Produkte KI in Form von Computer Vision, Sprachmodellen, Text Mining und anderem integrieren. Warum ein Lakehouse anstelle eines Data Lake für KI verwenden? Ein lakehouse bietet Datenversionierung, Governance, Sicherheit und ACID-Eigenschaften, die auch für unstrukturierte Daten benötigt werden.
Aktuelle Lakehouses senken zwar die Kosten, ihre Performance kann aber immer noch hinter der von spezialisierten Systemen (wie Data Warehouses) zurückbleiben, die auf jahrelangen Investitionen und Praxiseinsätzen basieren. Nutzer bevorzugen möglicherweise bestimmte Tools (BI-Tools, IDEs, Notebooks) gegenüber anderen. Daher müssen Lakehouses auch ihre UX und ihre Konnektoren für gängige Tools verbessern, um eine Vielzahl von Personas anzusprechen. Diese und andere Probleme werden mit der fortschreitenden Reifung und Entwicklung der Technologie angegangen. Mit der Zeit werden Lakehouses diese Lücken schließen und dabei ihre Kerneigenschaften – Einfachheit, Kosteneffizienz und eine bessere Fähigkeit zur Bereitstellung verschiedener Datenanwendungen – beibehalten.
Lesen Sie die FAQ zum Data Lakehouse für weitere Details.
Produto
June 12, 2024/11 min de leitura

