Ga naar de hoofdinhoud
Lakeflow-pipelines migratiegids

Delta Live Tables vs Lakeflow Pipelines wat is veranderd en hoe bouwt u het vandaag

Delta Live Tables heet nu Lakeflow pipelines. Bestaande DLT-code blijft werken, terwijl actuele API's datasettypes, CDC-patronen en pipeline-intentie explicieter maken.

Lees de Lakeflow-gids
DLT werkt nog steeds pyspark.pipelines AUTO CDC
DLT-moderniseringsdiff
Geen gedwongen rewrite
−
Delta Live Tables
+
Lakeflow-pipelines
−
import dlt
+
from pyspark import pipelines as dp
−
@dlt.table voor batch en streaming
+
@dp.table · @dp.materialized_view
−
WIJZIGINGEN TOEPASSEN
+
AUTO CDC

Het declaratieve model blijft

Dependencies, managed refresh, expectations en event-log-operations blijven bestaan. Moderniseer het API-oppervlak wanneer dat duidelijkheid of toekomstige compatibiliteit toevoegt.

Kort antwoord

Lakeflow-pipelines is de huidige naam en het volgende API-oppervlak voor DLT

Het product kreeg een nieuwe naam, maar het declaratieve pipelinemodel verdween niet. Bestaande DLT-code kan blijven draaien. Nieuwe code moet actuele Lakeflow-terminologie en de pyspark.pipelines API.

Geen verplichte codemigratie

De naamswijziging zelf vereist niet dat je werkende DLT-pipelines opnieuw bouwt.

Moderne API's zijn duidelijker

Streaming tables en materialized views hebben nu aparte Python-decorators.

Lakeflow voegt toe bovenop open Spark SDP

Databricks voegt AUTO CDC, expectations, event logs, continuous mode en andere productiefeatures toe.

Wat blijft

Dependencygraph
Managed refresh
Verwachtingen
Eventlog

Wat verandert

Lakeflow-naming
pyspark.pipelines
Expliciete datasettypes
AUTO CDC-terminologie

Behandel de rename, API-modernisering en legacy publishing mode als aparte onderwerpen. Ze vereisen niet allemaal dezelfde migratie.

API-kaart

Map het oude DLT-oppervlak naar de huidige Lakeflow-API

Het belangrijke migratiedetail is dataset-intent. Oudere @dlt.table code representeerde zowel batch- als streamingoutputs. Huidige Python maakt dat onderscheid expliciet.

import dlt
from pyspark import pipelines as dp
@dlt.table + streaming DataFrame
@dp.table
@dlt.table + batch DataFrame
@dp.materialized_view
@dlt.view
@dp.temporary_view
dlt.apply_changes(...)
dp.create_auto_cdc_flow(...)
APPLY CHANGES INTO
AUTO CDC INTO
Kies de dataset op basis van update-semantiek

Start met hoe de output correct moet blijven.

Wat heeft het target nodig?

Verwerk iedere nieuwe rij één keer

Append-heavy ingestie of streamingtransformaties.

Streaming table

Houd een queryresultaat actueel

Joins, aggregaties en afgeleide analytische state.

Materialized view

Hergebruik logica binnen de pipeline

Tussenliggende logica waarvoor geen gepubliceerde dataset nodig is.

Terraform

CDC is een flowbeslissing: gebruik AUTO CDC om geordende inserts, updates en deletes toe te passen in een streaming table.

Datasetkeuze

Kies niet tussen streaming tables en materialized views op basis van laagnaam

Een Bronze-tabel is vaak streaming, terwijl Silver en Gold beide typen kunnen bevatten. De juiste keuze hangt af van het gedrag van de bron, de transformatiesemantiek en hoe historische wijzigingen moeten worden verwerkt.

Streaming tables zijn van nature incrementeel

Normale refreshes verwerken records die sinds de vorige update zijn aangekomen. Oudere rijen worden niet automatisch opnieuw verwerkt.

Materialized views behouden querycorrectheid

Databricks kan waar mogelijk incrementeel refreshen en terugvallen op een volledige recompute wanneer nodig.

Eén SQL-object kan standalone zijn

Gebruik een volledige Lakeflow-pipeline wanneer je multi-stage dependencies, Python, sinks of pipeline-only CDC-patronen nodig hebt.

Huidige syntax

Gebruik actuele datasetnamen in SQL en Python

SQL gebruikt expliciete streaming-table- en materialized-view-DDL. Python gebruikt nu aparte decorators zodat het datasettype zichtbaar is in code.

SQL · streaming table + materialized view
CREATE OR REFRESH STREAMING TABLE bronze_mes_events
AS SELECT *
FROM STREAM read_files(
  '/Volumes/factory/raw/mes_events',
  format => 'json'
);

CREATE OR REFRESH MATERIALIZED VIEW gold_daily_output
AS
SELECT
  production_date,
  line_id,
  SUM(good_quantity) AS good_quantity
FROM silver.production_runs
GROUP BY production_date, line_id;
Python · huidige pipelines-API
from pyspark import pipelines as dp

@dp.table(name="bronze_mes_events")
def bronze_mes_events():
    return (
        spark.readStream
        .format("cloudFiles")
        .option("cloudFiles.format", "json")
        .load("/Volumes/factory/raw/mes_events")
    )

@dp.materialized_view(name="gold_daily_output")
def gold_daily_output():
    return (
        spark.read.table("silver.production_runs")
        .groupBy("production_date", "line_id")
        .sum("good_quantity")
    )

De oude CREATE OR REFRESH LIVE TABLE vorm is deprecated. Gebruik voor nieuwe SQL CREATE OR REFRESH MATERIALIZED VIEW of CREATE OR REFRESH STREAMING TABLE.

Brongedrag

Kies het ingestiepatroon op basis van hoe de bron verandert

Lakeflow-pipelines kunnen files, eventstreams, CDC-feeds en snapshots verwerken, maar die bronnen moeten niet door hetzelfde patroon worden gedwongen.

Supported database or SaaS source

managed ingestion

Patroon

Lakeflow Connect

Target

managed streaming tables

ADLS files or append-only events

new records arrive

Patroon

Auto Loader / streaming read

Target

streaming table

Ordered inserts, updates and deletes

CDC feed

Patroon

AUTO CDC

Target

streaming table · SCD1 / SCD2

Periodic full snapshots only

no native CDC

Patroon

AUTO CDC FROM SNAPSHOT

Target

streaming table · Python only

Lakeflow Connect en Lakeflow-pipelines lossen verschillende delen van de stack op. Managed connectors voegen bronspecifieke authenticatie, CDC-handling, retries en schema-evolution toe. Lakeflow-pipelines leveren het declaratieve transformatie- en processingframework eronder en downstream.

Execution mode

Streaming table betekent niet automatisch continuous compute

Datasettype en execution mode staan los van elkaar. Start voor de meeste manufacturingworkloads met triggered execution en verhoog freshness alleen wanneer een snellere beslissing de uitkomst daadwerkelijk verandert.

Triggered is de standaard

Ververs beschikbare data en stop daarna compute. Dit past bij de meeste uurlijkse, dagelijkse en on-demand pipelines.

Continu is voor bewezen latencybehoeften

Voor nieuwe continue workloads adviseert Databricks het continuous Lakeflow Job-patroon boven de ingebouwde continuous pipeline-instelling.

Realtime is gespecialiseerd

Real-time-modus in millisecondebereik is momenteel een Public Preview-feature en bedoeld voor operationele streaming-use-cases.

Freshness-ladder

Kies de laagste latency die de businessbeslissing nodig heeft.

Getriggerdminuten tot uren

Planning, voorraad, finance, dagelijkse productieperformance

Continuseconden tot minuten

Near-real-time operationele monitoring waar latency de reactie beïnvloedt

Realtime-modusmillisecondebereik · preview

Gespecialiseerde event-driven operationele workloads

Compute: Databricks adviseert serverless voor vrijwel alle nieuwe Lakeflow-pipelines. Gebruik classic waar netwerk-, instance- of environmentvereisten dit vragen.

Pipeline-update · factory_production
Gezond

Bronze-events

streaming

Silver geldig

2 verwachtingen

Gold-output

gematerialiseerd

Geslaagd

99.7%

Gedaald

186

Backlog

0

Eventlog

update status · kwaliteitsmetrics · lineage · errors · resource-events

Illustratieve pipeline-metrics. Gebruik de werkelijke eventlog en pipeline-UI als operationele bron.

Kwaliteit & observability

Behoud gedrag, niet alleen syntax

Een DLT-modernisering is alleen equivalent wanneer data-quality-acties, refreshgedrag en monitoring nog steeds hetzelfde operationele resultaat opleveren.

Expectations blijven een Lakeflow-feature

Bewaar ongeldige rijen voor metrics, verwijder ze, laat de update falen of implementeer een quarantine-pad wanneer onderzoek belangrijk is.

De eventlog is het programmatische record

Gebruik het voor update outcomes, expectation trends, errors, lineage en historische operationele analyse.

Streamingmetrics tonen backlog

Monitor bij streamingflows waar beschikbaar backlogrecords, bytes, bestanden en seconden.

Migratie

Scheid API-modernisering van migratie van publishing mode

De DLT-naamswijziging dwingt geen migratie af. Legacy publishing mode is iets anders. Pipelines die vóór 5 februari 2025 zijn gemaakt kunnen nog steeds het LIVE virtual schema gebruiken en moeten worden beoordeeld voor migratie naar de huidige default publishing mode.

Meestal optioneel

Modernisering DLT-API

Werk namen en API's bij wanneer je de codebase aanraakt. Valideer gedrag in plaats van blind te herschrijven.

1

Voorraad DLT-imports, decorators, APPLY CHANGES en oude terminologie.

2

Classificeer iedere dataset als streaming table, materialized view of temporary view.

3

Refactor alleen waar huidige API's duidelijkheid of toekomstige compatibiliteit verbeteren.

4

Afstemmen outputs, verwachtingen, latency en restartgedrag vóór promotie.

Review legacy pipelines

Standaard publicatiemodus

Dit wijzigt name resolution en pipelinemetadata. Het staat los van het vervangen van import dlt.

Legacy

LIVE virtueel schema

Legacy-publicatiemodus

Huidig

Catalogus + schema

default publishing mode

Review ongekwalificeerde reads die eerder via workspace defaults werden opgelost.

Gebruik volledig gekwalificeerde identifiers voor datasets buiten de geconfigureerde pipelinecatalogus en schema.

De publishing-mode-migratie werkt pipelinemetadata bij. Hij verplaatst of herschrijft de onderliggende datasets niet.

Veelgemaakte fouten

Vermijd migraties die semantiek per ongeluk wijzigen

De risicovolle wijzigingen zijn zelden de productnaam. Het zijn onjuiste aannames over datasettype, brongedrag, execution mode of name resolution.

Vermijd

Rewriting a working DLT pipeline only because the name changed

Betere default

Modernize APIs when the code is already being changed

Vermijd

Replacing every @dlt.table with @dp.table

Betere default

Classify batch outputs as materialized views first

Vermijd

Assuming a streaming table needs continuous mode

Betere default

Choose dataset type and execution mode independently

Vermijd

Streaming from a source that updates old rows without a plan

Betere default

Use AUTO CDC or another pattern that matches the source semantics

Vermijd

Using APPLY CHANGES in new examples

Betere default

Use AUTO CDC for current Lakeflow code

Vermijd

Ignoring LIVE and unqualified names in legacy publishing mode

Betere default

Review name resolution when moving to default publishing mode

Hoe Food For Analytics dit implementeert

Titan gebruikt Lakeflow-patronen op basis van brongedrag en beslisactualiteit

We gebruiken niet standaard hetzelfde pipelineobject voor iedere manufacturingdataset. Titan scheidt ingestiegedrag, transformatiesemantiek en execution mode zodat ieder dataproduct het eenvoudigste betrouwbare patroon kan gebruiken.

Brongedrag

Classificeer het wijzigingspatroon

Bestanden, events, CDC-feeds en snapshots vereisen verschillende ingestiesemantiek.

appendCDCsnapshot

Titan op Azure Databricks

Kies het Lakeflow-patroon

Gebruik het dataset- en flowtype dat correctheid behoudt met de laagste operationele complexiteit.

Auto Loader
AUTO CDC
Streaming tables
Materialized views

Operationele uitkomst

Draai met de vereiste actualiteit

Standaard getriggerd, continuous waar latency belangrijk is, met expectations en event-logmonitoring rond het dataproduct.

getriggerdobserveerbaargoverned

FAQ

Veelgestelde vragen

Praktische antwoorden over de overgang van Delta Live Tables-terminologie naar huidige Lakeflow-pipelines.

Is Delta Live Tables uitgefaseerd?

Delta Live Tables is de voormalige productnaam. Databricks noemt het product nu Lakeflow pipelines. Bestaande DLT-code blijft werken, dus de hernoeming vereist geen rewrite.

Moet ik import dlt direct vervangen?

Nee. De dlt Python-API's blijven ondersteund, maar Databricks adviseert voor nieuwe code en bij modernisering van bestaande code `from pyspark import pipelines as dp` te gebruiken.

Wat vervangt @dlt.table?

De vervanging hangt af van de dataset. Gebruik @dp.table voor een streaming table en @dp.materialized_view voor een materialized view. Daarmee wordt het bedoelde datasettype expliciet in actuele Python-code.

Wat vervangt APPLY CHANGES?

Databricks adviseert AUTO CDC. AUTO CDC verwerkt geordende change feeds en ondersteunt SCD Type 1 en Type 2. AUTO CDC FROM SNAPSHOT is beschikbaar in Python wanneer alleen periodieke bronsnapshots beschikbaar zijn.

Vereist een streaming table een continuous pipeline?

Nee. Datasettype en pipeline-execution mode zijn afzonderlijke beslissingen. Streaming tables en materialized views kunnen beide in triggered of continuous Lakeflow-pipelines draaien.

Wat gebeurde er met het LIVE-schema?

Het LIVE virtual schema hoort bij legacy publishing mode. Nieuwe pipelines gebruiken de default publishing mode, waar LIVE wordt genegeerd en de geconfigureerde catalogus en schema ongekwalificeerde referenties bepalen. Legacy publishing mode moet los van de DLT-naamswijziging worden beoordeeld.

Praktische laag

Moderniseer Lakeflow-pipelines zonder te herschrijven wat al werkt

We kunnen een bestaande DLT-codebase, bronsemantiek, publishing mode en operationeel gedrag beoordelen en vervolgens het kleinste veilige moderniseringspad bepalen.