Wat zijn alle Delta-dingen in Azure Databricks?
Dit artikel is een inleiding tot de technologieën die gezamenlijk delta hebben gemerkt in Azure Databricks. Delta verwijst naar technologieën met betrekking tot of in het opensource-project van Delta Lake.
In dit artikel wordt het volgende beantwoord:
- Wat zijn de Delta-technologieën in Azure Databricks?
- Wat doen ze? Of waar worden ze voor gebruikt?
- Hoe zijn ze gerelateerd aan en onderscheiden van elkaar?
Waar worden de Delta-dingen voor gebruikt?
Delta is een term die geïntroduceerd is met Delta Lake, de basis voor het opslaan van gegevens en tables in de Databricks Lakehouse. Delta Lake is ontworpen als een geïntegreerd systeem voor gegevensbeheer voor het verwerken van transactionele realtime en batchgewijze big data, door Parquet-gegevensbestanden uit te breiden met een transactielogboek op basis van bestanden voor ACID-transacties en schaalbare verwerking van metagegevens.
Delta Lake: besturingssysteemgegevensbeheer voor het lakehouse
Delta Lake is een opensource-opslaglaag die betrouwbaarheid biedt aan data lakes door een transactionele opslaglaag toe te voegen boven op gegevens die zijn opgeslagen in cloudopslag (op AWS S3, Azure Storage en GCS). Het maakt ACID-transacties, gegevensversiebeheer en terugdraaimogelijkheden mogelijk. Hiermee kunt u zowel batch- als streaminggegevens op een uniforme manier verwerken.
Delta tables zijn gebouwd op deze opslaglaag en bieden een table abstractie, zodat u eenvoudig kunt werken met grootschalige gestructureerde gegevens met behulp van SQL en de DataFrame-API.
Delta-tables: standaardarchitectuur voor gegevens table
Delta table is de standaardindeling voor gegevens table in Azure Databricks en is een functie van het opensource-gegevensframework van Delta Lake. Delta tables worden doorgaans gebruikt voor data lakes, waarbij where gegevens worden opgenomen via streaming of in grote batches.
Zie:
- Quickstart Delta Lake: Een table maken
- Delta Lake tablesbijwerken en wijzigen.
- DeltaTable-klasse: Hoofdklasse voor programmeerbare interactie met Delta tables.
Delta Live-Tables: gegevenspijplijnen
Delta Live Tables beheert de gegevensstroom tussen veel Delta tables, waardoor het werk van data engineers bij ETL-ontwikkeling en -beheer wordt vereenvoudigd. De pijplijn is de belangrijkste uitvoeringseenheid voor Delta Live-Tables. Delta Live Tables biedt declaratieve pijplijnontwikkeling, verbeterde betrouwbaarheid van gegevens en productiebewerkingen op cloudschaal. Gebruikers kunnen zowel batch- als streamingbewerkingen uitvoeren op dezelfde table en de gegevens zijn onmiddellijk beschikbaar voor het uitvoeren van query's. U definieert de transformaties die moeten worden uitgevoerd op uw gegevens en Delta Live Tables beheert taakindeling, clusterbeheer, bewaking, gegevenskwaliteit en foutafhandeling. Delta Live Tables verbeterde automatische schaalvergroting kan streamingworkloads verwerken die piekerig en onvoorspelbaar zijn.
Zie de Delta Live Tables tutorial.
Delta tables versus Delta Live Tables
Delta table is een manier om gegevens op te slaan in tables, terwijl u met Delta Live Tables kunt beschrijven hoe gegevens stromen tussen deze tables declaratief. Delta Live Tables is een declaratief framework dat veel delta's zoals tablesbeheert door ze aan te maken en bij te werken. Kortom, Delta tables is een architectuur voor gegevens table, terwijl Delta Live Tables een gegevenspijplijnframework is.
Delta: Open source of eigendom?
Een kracht van het Azure Databricks-platform is dat klanten niet worden vergrendeld in eigen hulpprogramma's: veel van de technologie wordt mogelijk gemaakt door opensource-projecten, waaraan Azure Databricks bijdraagt.
De Delta OSS-projecten zijn voorbeelden:
- Delta Lake-project: Open source-opslag voor een lakehouse.
- Delta Sharing-protocol: Open protocol voor veilig delen van gegevens.
Delta Live Tables is een eigen framework in Azure Databricks.
Wat zijn de andere Delta-dingen in Azure Databricks?
Hieronder vindt u beschrijvingen van andere functies die Delta in hun naam bevatten.
Delta Delen
Een open standaard voor veilig delen van gegevens, delta delen maakt het delen van gegevens mogelijk tussen organisaties, ongeacht hun rekenplatform.
Delta-engine
Een optimalisatiefunctie voor query's voor big data die gebruikmaakt van Open Source-technologie van Delta Lake die is opgenomen in Databricks. Delta Engine optimaliseert de prestaties van Spark SQL-, Databricks SQL- en DataFrame-bewerkingen door berekeningen naar de gegevens te pushen.
Delta Lake-transactielogboek (AKA DeltaLogs)
Eén bron van waarheid die alle wijzigingen bijhoudt die gebruikers in de table aanbrengen en het mechanisme waarmee Delta Lake atomiciteitgarandeert. Zie het Delta-transactielogboekprotocol op GitHub.
Het transactielogboek is essentieel voor het begrijpen van Delta Lake, omdat het de algemene thread is die door veel van de belangrijkste functies wordt uitgevoerd:
- ACID-transacties
- Schaalbare verwerking van metagegevens
- Tijdreizen
- En nog veel meer.