Grundlegendes zu Delta Lake
Delta Lake ist eine Open-Source-Speicherebene, die die Spark-basierte Data Lake-Verarbeitung um die Semantik relationaler Datenbanken erweitert. Delta Lake wird in Spark-Pools für Azure Synapse Analytics für PySpark-, Scala- und .NET-Code unterstützt.
Es folgen die Vorteile von Delta Lake in einem Spark-Pool für Synapse Analytics:
- Relationale Tabellen, die Abfrage- und Datenänderungen unterstützen. Delta Lake ermöglicht Ihnen, Daten in Tabellen zu speichern, die sog. CRUD-Vorgänge (Create, Read, Update, Delete [Erstellen, Lesen, Aktualisieren, Löschen]) unterstützen. Mit anderen Worten: Sie können wie in einem relationalen Datenbanksystem Datenzeilen auswählen, einfügen, aktualisieren und löschen.
- Unterstützung für ACID-Transaktionen. Relationale Datenbanken sind darauf ausgelegt, Änderungen an Transaktionsdaten zu unterstützen, die Atomarität (Transaktionen werden als eine einzelne Arbeitseinheit abgeschlossen), Konsistenz (Transaktionen verlassen die Datenbank in einem konsistenten Zustand), Isolation (laufende Transaktionen können sich nicht gegenseitig beeinträchtigen) und Dauerhaftigkeit (wenn eine Transaktion abgeschlossen ist, werden die von ihr vorgenommenen Änderungen dauerhaft gespeichert) ermöglichen. Delta Lake bietet in Spark dieselbe Transaktionsunterstützung, indem ein Transaktionsprotokoll implementiert und eine serialisierbare Isolation für gleichzeitige Vorgänge erzwungen wird.
- Datenversionsverwaltung und Zeitreise. Da alle Transaktionen im Transaktionsprotokoll protokolliert werden, können Sie mehrere Versionen jeder Tabellenzeile nachverfolgen und sogar mithilfe des Features Zeitreise eine frühere Version einer Zeile in einer Abfrage abrufen.
- Unterstützung für Batch- und Streamingdaten. Während die meisten relationalen Datenbanken Tabellen mit statischen Daten enthalten, bietet Spark über die Spark Structured Streaming-API native Unterstützung für Streamingdaten. Delta Lake-Tabellen können sowohl als Senken (Ziele) als auch als Quellen für Streamingdaten dienen.
- Standardformate und Interoperabilität. Die zugrunde liegenden Daten für Delta Lake-Tabellen sind im Parquet-Format gespeichert, das üblicherweise in Data Lake-Erfassungspipelines genutzt wird. Darüber hinaus können Sie mithilfe des serverlosen SQL-Pools in Azure Synapse Analytics Delta Lake-Tabellen in SQL abfragen.
Tipp
Weitere Informationen zu Delta Lake in Azure Synapse Analytics finden Sie in der Azure Synapse Analytics-Dokumentation unter Was ist Delta Lake?.