Vad är Delta Lake?
Delta Lake är ett lagringslager med öppen källkod som ger ACID-transaktioner (atomicitet, konsekvens, isolering och hållbarhet) till Apache Spark- och stordataarbetsbelastningar.
Den aktuella versionen av Delta Lake som ingår i Azure Synapse har språkstöd för Scala, PySpark och .NET och är kompatibel med Linux Foundation Delta Lake. Det finns länkar längst ned på sidan till mer detaljerade exempel och dokumentation. Du kan läsa mer i videon Introduktion till deltatabeller.
Nyckelfunktioner
Funktion | beskrivning |
---|---|
ACID-transaktioner | Datasjöar fylls vanligtvis i via flera processer och pipelines, varav vissa skriver data samtidigt med läsningar. Före Delta Lake och tillägg av transaktioner var datatekniker tvungna att gå igenom en manuell felbenägen process för att säkerställa dataintegritet. Delta Lake ger välbekanta ACID-transaktioner till datasjöar. Det ger serialisering, den starkaste nivån av isoleringsnivå. Läs mer i Dykning i Delta Lake: Packa upp transaktionsloggen. |
Skalbar metadatahantering | I stordata kan även själva metadata vara "stordata". Delta Lake behandlar metadata precis som data och utnyttjar Sparks distribuerade bearbetningskraft för att hantera alla dess metadata. Därför kan Delta Lake hantera petabyte-skalningstabeller med miljarder partitioner och filer på ett enkelt sätt. |
Tidsresor (versionshantering av data) | Möjligheten att "ångra" en ändring eller gå tillbaka till en tidigare version är en av de viktigaste funktionerna i transaktioner. Delta Lake tillhandahåller ögonblicksbilder av data så att du kan återgå till tidigare versioner av data för granskningar, återställningar eller återskapa experiment. Läs mer i Introduktion till Delta Lake Time Travel för storskaliga datasjöar. |
Öppna format | Apache Parquet är grundformatet för Delta Lake som gör att du kan använda de effektiva komprimerings- och kodningsscheman som ingår i formatet. |
Enhetlig batch och strömmande källa och mottagare | En tabell i Delta Lake är både en batchtabell samt en strömmande källa och mottagare. Strömmande data inmatning, batch historisk återfyllnad och interaktiva frågor fungerar helt enkelt direkt. |
Schematillämpning | Schematillämpning hjälper till att säkerställa att datatyperna är korrekta och att obligatoriska kolumner finns, vilket förhindrar att felaktiga data orsakar datainkonsekvens. Mer information finns i Dykning i Delta Lake: Schemaframtvingande och utveckling |
Schemautveckling | Med Delta Lake kan du göra ändringar i ett tabellschema som kan tillämpas automatiskt, utan att behöva skriva migrerings-DDL. Mer information finns i Dykning i Delta Lake: Schemaframtvingande och utveckling |
Granskningshistorik | Delta Lake-transaktionsloggen registrerar information om alla ändringar som görs i data som ger en fullständig spårningslogg för ändringarna. |
Uppdateringar och borttagningar | Delta Lake har stöd för Scala/Java/Python- och SQL-API:er för en mängd olika funktioner. Stöd för sammanslagnings-, uppdaterings- och borttagningsåtgärder hjälper dig att uppfylla efterlevnadskraven. Mer information finns i Meddelande om Delta Lake 0.6.1 Release, Announcing the Delta Lake 0.7 Release and Simple, Reliable Upserts and Deletes on Delta Lake Tables using Python API:er, which includes code snippets for merge, update, and delete DML commands. |
100 procent kompatibelt med Apache Spark API | Utvecklare kan använda Delta Lake med sina befintliga datapipelines med minimal ändring eftersom det är helt kompatibelt med befintliga Spark-implementeringar. |
Fullständig dokumentation finns på delta lakedokumentationsidan
Mer information finns i Delta Lake Project.