Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Important
Miljöversioner för Lakeflow-pipelines finns i offentlig förhandsvisning.
En miljöversion fäster den Python språkversionen och uppsättningen förinstallerade Python bibliotek som är tillgängliga för pipelinens Python kod. Eventuella externa beroenden som du lägger till i pipelinen läggs ovanpå den här basen.
Miljöversioner frikopplar pipelinens Python körning från Databricks Runtime-versionen som pipelinen körs på. När en miljöversion har angetts ändrar inte Databricks Runtime-uppgraderingar din Python språkversion eller förinstallerade biblioteksversioner. Python-körningen överensstämmer också med serverlösa jobb och anteckningsböcker som använder samma miljöversion. Information om hur du hittar den aktuella Databricks Runtime-versionen för Lakeflow-pipelines finns i Viktig information om Lakeflow-pipelines och versionsuppgraderingsprocessen.
Databricks migrerar automatiskt kvalificerade pipelines till en miljöversion. Se Automatisk migrering.
Important
Pipelines med en miljöversion kör Python-kod via Spark Connect, vilket kan ändra beteendet hos viss pipelinekod. För hela listan över begränsningar och beteendeförändringar, se Miljöversionskompatibilitet.
Krav
Miljöversioner har följande krav:
- Pipelinen måste använda Unity Catalog. Hive metastore-pipelines stöds inte.
Miljöversioner som stöds
Lakeflow-pipelines stöder miljöversion 3 och 4 på både serverlös och klassisk beräkning. Information om Python-språkversionen och den fullständiga listan över förinstallerade Python-bibliotek som finns tillgängliga i respektive version finns i referensen för miljöversioner.
Automatisk migrering
Databricks migrerar automatiskt kvalificerade pipelines till en miljöversion. Migrering sker vid nästa uppdatering av en pipeline, kräver inga manuella steg och inkluderar dessa skyddsåtgärder:
- Beteendet kontrolleras innan flytten. Databricks skannar din pipeline efter kodmönster som skulle bete sig annorlunda under Spark Connect och jämför pipelinens utdataplan före och efter migreringen. Se Miljöversionskompatibilitet.
- En misslyckad migration återställs automatiskt. Om en migrerad uppdatering misslyckas av någon anledning stoppas den innan någon data skrivs, och pipelinen återgår automatiskt till sin tidigare körtid vid nästa uppdatering. Ingen åtgärd krävs.
- Dina tydliga inställningar respekteras alltid. Om du själv anger
environment_version, åsidosätter Databricks det aldrig.
När en pipeline migrerar framgångsrikt körs den på miljöversionen framöver. Du kan se vilken version som valdes i pipelineinställningarna, API-svaret GetPipeline och händelseloggenruntime_details.
Vad som inte migreras automatiskt
En pipeline migreras inte automatiskt om någon av följande är tillämplig:
- Den har olösta Spark Connect-kompatibilitetsvarningar från den senaste uppdateringen.
- Det är inte en Unity Catalog-pipeline.
- Den använder en funktionalitet som automatisk migrering ännu inte stöder:
foreach_batchsinks, händelsehooks, AUTO CDC från en snapshotsfunktionskälla eller en anpassad avbild.
Pipelines som inte migreras automatiskt fortsätter att köras på sin tidigare Python-runtime utan förändring. Du kan själv aktivera en miljöversion när pipelinen uppfyller kraven.
Aktivera en miljöversion själv
Automatisk migrering omfattar de flesta pipelines. Du kan också konfigurera en miljöversion explicit, till exempel för att migrera tidigare eller för att fästa en specifik version, via pipeline-editorns UI, Pipelines REST API eller Deklarative Automation Bundles.
Innan du aktiverar en miljöversion uttryckligen, kontrollera att din pipeline är kompatibel med Spark Connect. Om Databricks upptäcker att om du aktiverar versionen skulle det ändra pipelinens beteende, misslyckas uppdateringen innan data skrivs, med ett felmeddelande som anger vilken skillnad som måste åtgärdas.
Aktivera via användargränssnittet
- Klicka på Inställningar i pipelineredigeraren.
- Under PipelineMiljö väljer du
Redigera miljö.
- Välj en miljöversion i listrutan.
- Spara pipelineinställningarna.
Externa beroenden som läggs till i avsnittet Pipeline Environment läggs ovanpå de bibliotek som ingår i den valda miljöversionen. Se Hantera Python-beroenden för pipelines.
Aktivera via API:et
REST-API:et för pipelines tar emot ett environment-block när en pipeline skapas och uppdateras. Autentisering med personlig åtkomsttoken måste vara aktiverat för arbetsytan.
Så här skapar du en pipeline med en miljöversion:
curl --request POST \
--url 'https://<workspace-host>/api/2.0/pipelines' \
--header 'Authorization: Bearer <personal-access-token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"name": "<pipeline-name>",
"catalog": "<catalog>",
"schema": "<schema>",
"channel": "CURRENT",
"environment": {
"environment_version": "4",
"dependencies": [
"simplejson==3.19.*"
]
}
}'
Om du vill ange miljöversionen på en befintlig pipeline skickar du samma environment block med PUT /api/2.0/pipelines/<pipeline-id>.
Aktivera genom deklarativa automatiseringspaket
När du skapar en pipeline med deklarativa Automation-paket kan du ange en miljöversion i YAML-definitionen för pipelinen.
- Kontrollera att Databricks CLI har version v0.294.0 eller senare. Om inte uppgraderar du genom att följa installationsguiden.
- Konfigurera en bundle genom att följa handledningen för pipelines bundle.
- Leta reda på pipeline-YAML-filen i din bundel, vanligtvis
<bundle-folder>/resources/<pipeline_name>_pipeline.yml. - Ange fälten
environment_versionochdependenciesi yaml-pipelinen:
resources:
pipelines:
my_pipeline:
name: my_pipeline
catalog: ${var.catalog}
schema: ${var.schema}
root_path: '../src/my_pipeline'
libraries:
- glob:
include: ../src/my_pipeline/transformations/**
environment:
environment_version: 4
dependencies:
- --editable ${workspace.file_path}
Kontrollera miljöversionen på en pipeline
För att kontrollera vilken miljöversion en pipeline kör, oavsett om du sätter den explicit eller om Databricks valt den under automatisk migrering:
-
UI: Öppna pipelineinställningarna och kontrollera avsnittet Pipeline Environment, eller granska JSON-fönstret för fältet
environment.environment_version. -
API: Anropa
GET /api/2.0/pipelines/<pipeline-id>och letaenvironment.environment_versionefter i svaret. Detta visar en version du uttryckligen ställt in; För att se en version som valts av automatisk migrering, använd händelseloggen nedan. -
Händelselogg: Inspektera händelsen
runtime_details, som rapporterar miljöversionen som användes för uppdateringen. Se information om händelsen runtime_details.
Inaktivera eller rulla tillbaka en miljöversion
Du behöver inte rulla tillbaka en automatisk migrering manuellt. En migrering som misslyckas återställs automatiskt vid nästa uppdatering. När miljöversionen tas bort återgår pipelinen till den tidigare Python körningskonfigurationen. Om något oväntat händer, kontakta Azure Databricks support.
Ytterligare resurser
- Miljöversionskompatibilitet — begränsningar, beteendeförändringar, kompatibilitetsskanning och automatisk migrering.
- Hantera Python beroenden för pipelines – skikta externa Python beroenden ovanpå en miljöversion.