Dela via


Konfigurera deklarativa pipelines för Lakeflow

I den här artikeln beskrivs den grundläggande konfigurationen för deklarativa Lakeflow-pipelines med hjälp av arbetsytans användargränssnitt.

Databricks rekommenderar att utveckla nya pipelines med serverlös arkitektur. Konfigurationsinstruktioner för serverlösa pipelines finns i Konfigurera en serverlös pipeline.

Konfigurationsinstruktionerna i den här artikeln använder Unity Catalog. Anvisningar för hur du konfigurerar pipelines med ett äldre Hive-metaarkiv finns i Använd deklarativa pipelines för Lakeflow med ett äldre Hive-metaarkiv.

I den här artikeln beskrivs funktioner för det aktuella standardpubliceringsläget för pipelines. Pipelines som skapats före den 5 februari 2025 kan använda det äldre publiceringsläget och LIVE virtuella schemat. Se LIVE-schemat (äldre).

Anmärkning

Användargränssnittet har ett alternativ för att visa och redigera inställningar i JSON. Du kan konfigurera de flesta inställningar med antingen användargränssnittet eller en JSON-specifikation. Vissa avancerade alternativ är endast tillgängliga med hjälp av JSON-konfigurationen.

JSON-konfigurationsfiler är också användbara när du distribuerar pipelines till nya miljöer eller använder CLI eller REST API-.

En fullständig referens till JSON-konfigurationsinställningarna för Lakeflows deklarativa pipelines finns i deklarativa pipelines-konfigurationer för Lakeflow.

Konfigurera en ny pipeline

Gör följande för att konfigurera en ny pipeline:

  1. Längst upp i sidofältet klickar du på plusikonen.Ny och välj sedan Pipeline-ikonen.ETL-pipeline.

  2. Ge din pipeline ett unikt namn högst upp.

  3. Under namnet kan du se den standardkatalog och det schema som har valts åt dig. Ändra dessa för att ge din pipeline olika standardvärden.

    Standardkatalogen och standardschemat är därifrån dataset läses eller skrivs när du inte anger en katalog eller ett schema i din kod. Mer information finns i Databasobjekt i Azure Databricks .

  4. Välj önskat alternativ för att skapa en pipeline:

    • Börja med exempelkod i SQL för att skapa en ny pipeline- och mappstruktur, inklusive exempelkod i SQL.
    • Börja med exempelkod i Python för att skapa en ny pipeline- och mappstruktur, inklusive exempelkod i Python.
    • Börja med en enda transformering för att skapa en ny pipeline och mappstruktur med en ny tom kodfil.
    • Lägg till befintliga tillgångar för att skapa en pipeline som du kan associera med befintliga kodfiler på din arbetsyta.
    • Skapa ett källstyrt projekt för att skapa en pipeline med ett nytt Databricks Asset Bundles-projekt eller lägga till pipelinen i ett befintligt paket.

    Du kan ha både SQL- och Python-källkodsfiler i ETL-pipelinen. När du skapar en ny pipeline och väljer ett språk för exempelkoden är språket endast för exempelkoden som ingår i pipelinen som standard.

  5. När du gör ditt val omdirigeras du till den nyligen skapade pipelinen.

    ETL-pipelinen skapas med följande standardinställningar:

    Den här konfigurationen rekommenderas för många användningsfall, inklusive utveckling och testning, och passar bra för produktionsarbetsbelastningar som ska köras enligt ett schema. För mer information om hur du schemalägger pipelines, se Pipelineuppgift för jobb.

    Du kan justera de här inställningarna från pipelinens verktygsfält.

Du kan också skapa en ETL-pipeline från arbetsytans webbläsare:

  1. Klicka på Arbetsyta på den vänstra panelen.
  2. Välj valfri mapp, inklusive Git-mappar.
  3. Klicka på Skapa i det övre högra hörnet och klicka på ETL-pipeline.

Du kan också skapa en ETL-pipeline från sidan jobb och pipelines:

  1. På arbetsytan klickar du på Arbetsflöden-ikonen.Jobb och pipelines i sidofältet.
  2. Under Ny klickar du på ETL-pipeline.

konfigurationsalternativ för Compute

Databricks rekommenderar att du alltid använder Förbättrad automatisk skalning. Standardvärden för andra beräkningskonfigurationer fungerar bra för många pipelines.

Serverlösa pipelines tar bort möjligheten att konfigurera beräkningar. Konfigurationsinstruktioner för serverlösa pipelines finns i Konfigurera en serverlös pipeline.

Använd följande inställningar för att anpassa beräkningskonfigurationer:

  • Använd klustertaggar för att övervaka kostnader som är associerade med Lakeflow Deklarativa Pipelines. Se Konfigurera beräkningstaggar.
  • Konfigurera instanstyper för att ange vilken typ av virtuella datorer som används för att köra pipelinen. Se Välj instanstyper för att köra en pipeline.
    • Välj en arbetstyp optimerad för de arbetsbelastningar som konfigurerats i din pipeline.
    • Du kan också välja en drivrutinstyp som skiljer sig från din arbetstyp. Detta kan vara användbart för att minska kostnaderna i pipelines med stora arbetstyper och låg användning av drivrutinsberäkning eller för att välja en större drivrutinstyp för att undvika problem med minnesbrist i arbetsbelastningar med många små arbetare.

Ställ in användare att köra som

Med Kör som användare kan du ändra den identitet som en pipeline använder för att exekvera och ägarskapet för de tabeller som den skapar eller uppdaterar. Detta är användbart i situationer där den ursprungliga användaren som skapade pipelinen har inaktiverats, till exempel om de lämnade företaget. I sådana fall kan pipelinen sluta fungera och tabellerna som den publicerade kan bli otillgängliga för andra. Genom att uppdatera pipelinen så att den körs som en annan identitet, till exempel tjänstens huvudnamn, och omtilldela ägarskapet för de publicerade tabellerna, kan du återställa åtkomsten och se till att pipelinen fortsätter att fungera. Att köra pipelines som tjänsteprincipaler anses vara en bra praxis eftersom de inte är knutna till enskilda användare, vilket gör dem säkrare, mer stabila och mer tillförlitliga för automatiserade arbetsbelastningar.

Behörigheter som krävs

För användaren som gör ändringen:

  • CAN_MANAGE behörigheter för pipelinen
  • CAN_USE roll för tjänstens huvudnamn (om körningsinställningen anges till ett huvudnamn för tjänsten)

För kör-som-användaren eller tjänstens principal:

  • Åtkomst till arbetsyta:

    • Åtkomstbehörighet för arbetsyta för att verka på arbetsytan
    • Kan använda behörighet för klusterprinciper som används av pipelinen
    • Behörighet att skapa beräkning på arbetsytan
  • Källkodsåtkomst:

    • Kan läsa behörighet för alla notebook-filer som ingår i pipelinens källkod
    • Kan läsa behörighet för arbetsytefiler om pipelinen använder dem
  • Behörigheter för Unity Catalog (för pipelines som använder Unity Catalog):

    • USE CATALOG i målkatalogen
    • USE SCHEMA och CREATE TABLE på målschemat
    • MODIFY behörighet för befintliga tabeller som pipelinen uppdaterar
    • CREATE SCHEMA behörighet om pipelinen skapar nya scheman
  • Legacy Hive-metastore-behörigheter (för pipelines med Hive metastore):

    • SELECT och MODIFY behörigheter för måldatabaser och tabeller
  • Ytterligare åtkomst till molnlagring (om tillämpligt):

    • Behörigheter att läsa från källlagringsplatser
    • Behörigheter att skriva till mållagringsplatser

Så här ställer du in kör som-användare

Du kan ange run-as användaren genom pipelineinställningarna som finns på övervakningssidan för pipelinen eller i pipelineredigeraren. Så här ändrar du användaren från övervakningssidan för pipelinen:

  1. Klicka på Jobb & Pipeline för att öppna listan över pipelines och välj den pipeline vars namn du vill redigera.
  2. På sidan piplineövervakning klickar du på Inställningar.
  3. I sidofältet Pipelineinställningar klickar du på pennikonen. Redigera bredvid Kör som.
  4. I redigeringswidgeten väljer du något av följande alternativ:
    • Ditt eget användarkonto
    • Ett huvudnamn för tjänsten som du har CAN_USE behörighet för
  5. Klicka på Spara för att tillämpa ändringarna.

När du uppdaterar kör som-användaren:

  • Pipelineidentiteten ändras för att använda den nya användaren eller tjänstens huvudnamn för alla framtida körningar
  • I Unity Catalog-pipelines uppdateras ägaren av tabeller som publicerats av pipelinen så att den matchar den nya kör som-identiteten
  • Framtida pipelineuppdateringar kommer att använda behörigheter och autentiseringsuppgifter för den nya run-as-identiteten
  • Kontinuerliga pipelines återstartas automatiskt med den nya identiteten. Utlösta pipelines startar inte om automatiskt, och ändringen av körningsläget kan avbryta en pågående uppdatering.

Anmärkning

Om uppdateringen av kör-som misslyckas får du ett felmeddelande som förklarar orsaken till misslyckandet. Vanliga problem är otillräckliga behörigheter för tjänstens principanvändare.

Andra konfigurationsöverväganden

Följande konfigurationsalternativ är också tillgängliga för pipelines:

Välj en produktutgåva

Välj produktutgåvan Lakeflow Declarative Pipelines med de bästa funktionerna för dina krav på pipeline. Följande produktversioner är tillgängliga:

  • Core för att köra strömmande inmatningsarbetsflöden. Välj utgåvan Core om din pipeline inte kräver avancerade funktioner som Change Data Capture (CDC) eller förväntningar gällande Lakeflow deklarativa pipelines.
  • Pro för att köra strömmade inmatnings- och CDC-arbetsbelastningar. Den Pro produktutgåvan stöder alla Core funktioner, plus stöd för arbetsbelastningar som kräver uppdatering av tabeller baserat på ändringar i källdata.
  • Advanced för att köra strömmande inläsningar, CDC-arbetsbelastningar och arbetsbelastningar som kräver uppfyllelse av förväntade resultat. Produktutgåvan Advanced stöder funktionerna i utgåvorna Core och Pro, och inkluderar datakvalitetsbegränsningar med förväntningar för Lakeflow Deklarativa Pipelines.

Du kan välja produktutgåvan när du skapar eller redigerar en pipeline. För varje pipeline kan du välja en annan utgåva. Se Lakeflow Declarative Pipelines produktsida.

Obs! Om din pipeline innehåller funktioner som inte stöds av den valda produktutgåvan, till exempel förväntningar, får du ett felmeddelande som förklarar orsaken till felet. Du kan sedan redigera pipelinen för att välja lämplig utgåva.

Konfigurera källkod

Du kan använda tillgångswebbläsaren i Lakeflow Pipelines-redigeraren för att konfigurera källkoden som definierar din pipeline. Pipeline-källkod definieras i SQL- eller Python-skript som lagras i arbetsytefiler. När du skapar eller redigerar din pipeline kan du lägga till en eller flera filer. Som standard finns pipelinens källkod i transformations mappen i pipelinens rotmapp.

Eftersom Lakeflow Deklarativa pipelines automatiskt analyserar beroenden för datauppsättningar för att konstruera bearbetningsdiagrammet för din pipeline kan du lägga till källkodstillgångar i valfri ordning.

Mer information om hur du använder Lakeflow Pipelines-redigeraren finns i Utveckla och felsöka ETL-pipelines med Lakeflow Pipelines Editor.

Hantera externa beroenden för pipelines som använder Python

Deklarativa pipelines för Lakeflow stöder användning av externa beroenden i dina pipelines, till exempel Python-paket och bibliotek. För att lära dig om valmöjligheter och rekommendationer för att använda beroenden, se Hantera Python-beroenden för Lakeflow Deklarativa Pipelines.

Använda Python-moduler som lagras på din Azure Databricks-arbetsyta

Förutom att implementera Python-koden i pipeline-källkodsfiler kan du använda Databricks Git-mappar eller arbetsytefiler för att lagra koden som Python-moduler. Det är särskilt användbart att lagra koden som Python-moduler när du har vanliga funktioner som du vill använda i flera pipelines eller notebook-filer i samma pipeline. Information om hur du använder Python-moduler med dina pipelines finns i Importera Python-moduler från Git-mappar eller arbetsytefiler.