Was sind all die Delta-Sachen in Azure Databricks?
Dieser Artikel ist eine Einführung in die Technologien, die auf Azure Databricks gemeinsam als Delta gekennzeichnet sind. Delta bezieht sich auf Technologien im Zusammenhang mit oder im Open-Source-Projekt Delta Lake.
Dieser Artikel beantwortet:
- Was sind die Delta-Technologien in Azure Databricks?
- Was machen Sie? Oder wofür werden sie verwendet?
- Wie hängen sie miteinander zusammen und worin unterscheiden sie sich voneinander?
Wofür werden die Delta-Sachen verwendet?
Delta ist ein Begriff, der mit Delta Lake eingeführt wurde, der Grundlage für das Speichern von Daten und Tabellen im Databricks Lakehouse. Delta Lake wurde als einheitliches Datenverwaltungssystem für die Verarbeitung von transaktionsbasierten Echtzeit- und Batch-Big Data konzipiert, indem Parquet-Datendateien mit Einem dateibasierten Transaktionsprotokoll für ACID-Transaktionen und einer skalierbaren Metadatenverarbeitung erweitert wurden.
Delta Lake: Betriebssystemdatenverwaltung für das Lakehouse
Delta Lake ist eine Open-Source-Speicherebene, die Zuverlässigkeit zu Data Lakes bringt, indem eine transaktionsbasierte Speicherschicht über Daten hinzugefügt wird, die im Cloudspeicher gespeichert sind (auf AWS S3, Azure Storage und GCS). Es ermöglicht ACID-Transaktionen, Datenversionsverwaltung und Rollbackfunktionen. Es ermöglicht Ihnen, Batch- und Streamingdaten auf einheitliche Weise zu verarbeiten.
Delta-Tabellen basieren auf dieser Speicherebene und bieten eine Tabellenabstraktion, wodurch die Arbeit mit umfangreichen strukturierten Daten mithilfe von SQL und der DataFrame-API erleichtert wird.
Delta-Tabellen: Standardarchitektur der Datentabelle
Die Delta-Tabelle ist das Standarddatentabellenformat in Azure Databricks und ist ein Feature des Open Source-Datenframeworks Delta Lake. Delta-Tabellen werden in der Regel für Data Lakes verwendet, bei denen Daten über Streaming oder in großen Batches erfasst werden.
Thema
- Delta Lake – Schnellstart: Erstellen einer Tabelle
- Aktualisieren und Ändern von Delta Lake-Tabellen.
- DeltaTable-Klasse: Hauptklasse für die programmgesteuerte Interaktion mit Delta-Tabellen.
Delta-Livetabellen: Datenpipelines
Delta Live Tables verwalten den Datenfluss zwischen vielen Delta-Tabellen und vereinfachen so die Arbeit von Datentechnikern bei der ETL-Entwicklung und -Verwaltung. Die Pipeline ist die Haupteinheit der Ausführung für Delta Live Tables. Delta Live Tables bietet deklarative Pipelineentwicklung, verbesserte Datensicherheit und Produktionsvorgänge im Cloudmaßstab. Benutzer können Batch- und Streamingvorgänge in derselben Tabelle ausführen, und die Daten sind sofort für die Abfrage verfügbar. Sie müssen lediglich die gewünschten Transformationen für Ihre Daten definieren. Delta Live Tables kümmert sich um Aufgabenorchestrierung, Clusterverwaltung, Überwachung, Datenqualität und Fehlerbehandlung. Delta Live Tables enhanced autocaling can handle streaming workloads which are spiky and unvorhersehbar.
Weitere Informationen finden Sie im Tutorial zu Delta Live Tables.
Delta-Tabellen vs. Delta-Live Tables
Die Delta-Tabelle ist eine Möglichkeit zum Speichern von Daten in Tabellen, während Delta Live Tables es Ihnen ermöglicht, deklarativ zu beschreiben, wie Daten zwischen diesen Tabellen fließen. Delta Live Tables ist ein deklaratives Framework, das viele Delta-Tabellen verwaltet, indem es sie erstellt und auf dem neuesten Stand hält. Kurz gesagt, Delta-Tabellen sind eine Datentabellenarchitektur, während Delta Live Tables ein Datenpipelineframework ist.
Delta: Open Source oder proprietär?
Eine Stärke der Azure Databricks-Plattform besteht darin, dass sie Kunden nicht in proprietäre Tools zwingt: Ein Großteil der Technologie wird von Open-Source-Projekten getragen, zu denen Azure Databricks beiträgt.
Die Delta-OSS-Projekte sind Beispiele:
- Delta Lake-Projekt: Open Source-Speicher für ein Lakehouse.
- Delta Sharing-Protokoll: Offenes Protokoll für sichere Datenfreigabe.
Delta Live Tables ist ein proprietäres Framework in Azure Databricks.
Was sind die anderen Delta-Sachen auf Azure Databricks?
Nachfolgend finden Sie Beschreibungen anderer Features, die Delta in ihrem Namen tragen.
Delta Sharing
Als offener Standard für die sichere Datenfreigabe ermöglicht Delta Sharing die Datenfreigabe zwischen Organisationen unabhängig von ihrer Compute-Plattform.
Delta-Engine
Ein Abfrageoptimierer für Big Data, der Open-Source-Technologie von Delta Lake verwendet, die in Databricks enthalten ist. Die Delta-Engine optimiert die Leistung von Spark SQL-, Databricks SQL- und DataFrame-Vorgängen, indem die Berechnung an die Daten übertragen wird.
Delta Lake-Transaktionsprotokoll (AKA DeltaLogs)
Eine Single Source of Truth, die alle Änderungen verfolgt, die Benutzer an der Tabelle vornehmen, und der Mechanismus, über den Delta Lake Atomarität garantiert. Siehe das Delta-Transaktionsprotokoll auf GitHub.
Das Transaktionsprotokoll ist der Schlüssel zum Verständnis von Delta Lake, da es sich um den roten Faden handelt, der sich durch viele seiner wichtigsten Features zieht:
- ACID-Transaktionen
- Skalierbare Metadatenverarbeitung
- Zeitreise
- Sowie weitere Möglichkeiten