Vad är pipelines?

En pipeline är den huvudsakliga enheten för utveckling och körning inom Apache Spark™ Declarative Pipelines (SDP) i Lakeflow. En pipeline är en samling källkodsfiler och en konfiguration. Källfilerna deklarerar datauppsättningar (strömmande tabeller, materialiserade vyer och vyer) tillsammans med de frågor och flöden som skapar dem. Konfigurationen anger hur pipelinen körs och var data lagras.

En pipeline är behållaren för de flöden, strömmande tabeller, materialiserade vyer och sinkar som du definierar. När pipelinen körs analyserar den beroendena mellan dessa objekt och samordnar deras körningsordning och parallellisering automatiskt. Mer information om de objekt som en pipeline innehåller finns i Vad är Lakeflow-pipelines?. För en jämförelse av Lakeflow-pipelines och Apache Spark™ Declarative Pipelines, se Apache Spark Declarative Pipelines.

Pipeline-källkod

Pipeline-källkoden skrivs i Python eller SQL. En enda pipeline kan blanda Python- och SQL-källfiler, men varje fil kan bara innehålla ett språk. Eftersom pipelinen analyserar datamängdsberoenden i alla dess källfiler kan du ordna källkoden mellan filer i valfri ordning.

Språkspecifik utvecklingsvägledning finns i Utveckla pipelinekod med Python och Utveckla Lakeflow-pipelineskod med SQL.

Graf över pipeline

Pipelines härleder automatiskt beroenden mellan datauppsättningar och ordnar dem i en riktad acyklisk graf (DAG). Diagrammet bestämmer utvärderingsordningen: överordnade datauppsättningar beräknas före underordnade datamängder. Du kan visa och interagera med pipelinediagrammet i Lakeflow Pipelines-redigeraren.

Uppdateringar i pipeline

En pipelineuppdatering beräknar det aktuella tillståndet för varje datauppsättning genom att:

  1. Starta ett kluster med rätt konfiguration.
  2. Analysera källfiler och skapa beroendediagrammet.
  3. Databehandling eller stegvis uppdatering av varje datauppsättning i beroendeordning.

Pipelines körs i två lägen:

  • Utlöses: Pipelinen körs en gång och stannar när alla datauppsättningar är uppdaterade.
  • Kontinuerligt: Pipelinen körs kontinuerligt och bearbetar ny data allteftersom den kommer in.

Uppdateringar som du utlöser interaktivt från redigeraren optimerar för snabb iteration, återanvänder klustret igen och inaktiverar automatiska återförsök. Se Körningsbeteende för uppdatering.

Typer av pipelines

Listan Jobb och pipelines innehåller mer än bara pipelines som skapats med Lakeflow-pipelines. Azure Databricks kör flera olika typer av pipelines, och listan Jobs & Pipelines och sidan för pipelineövervakning anger typen för var och en så att du kan skilja dem åt. I följande tabell mappas varje pipelinetyp till värdet pipeline_type som registrerats i händelseloggen:

Skriv in jobb och pipelines pipeline_type i händelseloggen Description
ETL WORKSPACE En Lakeflow-pipeline. Se Spark deklarativa datapipelines.
Ingestion MANAGED_INGESTION En hanterad inmatningspipeline som skapats med Lakeflow Connect. Se Lakeflow Connect-kopplingskoncept.
MV/ST DBSQL Ett fristående arbetsflöde. Se Fristående pipelines.
Databastabellsynkronisering DATABASE_TABLE_SYNC En pipeline som synkroniserar en tabell till en Lakebase-databas. Se Hantera lakehouse-data med synkroniserade tabeller.

Fristående pipelines

Du kan skapa och hantera strömmande tabeller och materialiserade vyer utanför en Lakeflow-pipeline som fristående pipelines. Du kan använda Databricks SQL eller Python för att skapa och uppdatera fristående strömningstabeller och materialiserade vyer. De körs på samma Azure Databricks infrastruktur och har samma bearbetningssemantik som i en Lakeflow-pipeline. När du definierar en fristående strömningstabell eller materialiserad vy definieras flöden implicit som en del av strömningstabellen eller den materialiserade vydefinitionen.

Mer information finns i Fristående pipelines.

Lakeflow Pipelines-redigeraren

Lakeflow Pipelines Editor är en IDE som skapats för pipelineutveckling. Den innehåller:

  • En kodredigerare med flera filer för Python- och SQL-källfiler
  • En bläddrare för pipeline-resurser för att organisera filer och mappar
  • Ett interaktivt pipelinediagram som visar beroenden och tillstånd för datauppsättningar
  • Dataförhandsgranskningar för strömmande tabeller och materialiserade vyer
  • Körningsinsikter och ett problemfönster som visar resultat från den senaste körningen
  • Selektiv körning för att uppdatera enskilda filer eller tabeller utan att köra hela pipelinen

Redigeraren integreras med Azure Databricks-plattformen och stöder versionskontroll via Git-mappar. Stegvis vägledning finns i Utveckla och felsöka ETL-pipelines med Lakeflow Pipelines-redigeraren.

Ytterligare resurser