Utveckla Delta Live Tables-pipelines med Databricks-tillgångspaket
Med Databricks-tillgångspaket, även kallade paket, kan du programmatiskt validera, distribuera och köra Azure Databricks-resurser, till exempel Delta Live Tables-pipelines. Du kan också använda paket för att programmatiskt hantera Azure Databricks-jobb och arbeta med MLOps Stacks. Se Vad är Databricks-tillgångspaket?.
Den här artikeln beskriver en uppsättning steg som du kan utföra från din lokala utvecklingsdator för att använda ett paket som programmatiskt hanterar en Delta Live Tables-pipeline.
Krav
- Databricks CLI version 0.218 eller senare. Om du vill kontrollera den installerade versionen av Databricks CLI kör du kommandot
databricks -v
. Information om hur du installerar Databricks CLI finns i Installera eller uppdatera Databricks CLI. - Fjärrarbetsytan måste ha arbetsytefiler aktiverade. Se Vad är arbetsytefiler?.
(Valfritt) Installera en Python-modul för att stödja utveckling av lokala pipelines
Databricks tillhandahåller en Python-modul som hjälper dig att utveckla pipelinekoden för Delta Live Tables lokalt genom att tillhandahålla syntaxkontroll, automatisk komplettering och datatypskontroll när du skriver kod i din IDE.
Python-modulen för lokal utveckling är tillgänglig i PyPi. Information om hur du installerar modulen finns i Python stub for Delta Live Tables (Python stub for Delta Live Tables).
Beslut: Skapa paketet med hjälp av en mall eller manuellt
Bestäm om du vill skapa paketet med hjälp av en mall eller manuellt:
Skapa paketet med hjälp av en mall
I de här stegen skapar du paketet med azure Databricks-standardpaketmallen för Python. De här stegen hjälper dig att skapa ett paket som består av en notebook-fil som definierar en Delta Live Tables-pipeline som filtrerar data från den ursprungliga datauppsättningen. Sedan validerar, distribuerar och kör du den distribuerade pipelinen på din Azure Databricks-arbetsyta.
Steg 1: Konfigurera autentisering
I det här steget konfigurerar du autentisering mellan Databricks CLI på utvecklingsdatorn och Azure Databricks-arbetsytan. Den här artikeln förutsätter att du vill använda U2M-autentisering (OAuth user-to-machine) och en motsvarande Azure Databricks-konfigurationsprofil med namnet DEFAULT
för autentisering.
Kommentar
U2M-autentisering är lämpligt för att prova de här stegen i realtid. För helt automatiserade arbetsflöden rekommenderar Databricks att du använder M2M-autentisering (machine-to-machine) för OAuth i stället. Se installationsinstruktionerna för M2M-autentisering i Autentisering.
Använd Databricks CLI för att initiera OAuth-tokenhantering lokalt genom att köra följande kommando för varje målarbetsyta.
I följande kommando ersätter du
<workspace-url>
med url:en för Azure Databricks per arbetsyta, till exempelhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
Databricks CLI uppmanar dig att spara den information som du angav som en Azure Databricks-konfigurationsprofil. Tryck
Enter
för att acceptera det föreslagna profilnamnet eller ange namnet på en ny eller befintlig profil. Alla befintliga profiler med samma namn skrivs över med den information som du angav. Du kan använda profiler för att snabbt växla autentiseringskontext över flera arbetsytor.Om du vill hämta en lista över befintliga profiler i en separat terminal eller kommandotolk använder du Databricks CLI för att köra kommandot
databricks auth profiles
. Om du vill visa en specifik profils befintliga inställningar kör du kommandotdatabricks auth env --profile <profile-name>
.I webbläsaren slutför du anvisningarna på skärmen för att logga in på din Azure Databricks-arbetsyta.
Om du vill visa en profils aktuella OAuth-tokenvärde och tokens kommande förfallotidsstämpel kör du något av följande kommandon:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
Om du har flera profiler med samma
--host
värde kan du behöva ange--host
alternativen och-p
tillsammans för att hjälpa Databricks CLI att hitta rätt matchande OAuth-tokeninformation.
Steg 2: Skapa paketet
Ett paket innehåller de artefakter som du vill distribuera och inställningarna för de arbetsflöden som du vill köra.
Använd terminalen eller kommandotolken för att växla till en katalog på den lokala utvecklingsdatorn som innehåller mallens genererade paket.
Använd Dataricks CLI för att köra
bundle init
kommandot:databricks bundle init
För
Template to use
lämnar du standardvärdet fördefault-python
genom att trycka påEnter
.För
Unique name for this project
lämnar du standardvärdetmy_project
, eller skriver ett annat värde och trycker sedan påEnter
. Detta avgör namnet på rotkatalogen för det här paketet. Den här rotkatalogen skapas i den aktuella arbetskatalogen.För
Include a stub (sample) notebook
väljer och trycker duno
påEnter
. Detta instruerar Databricks CLI att inte lägga till en exempelanteckningsbok just nu, eftersom exempelanteckningsboken som är associerad med det här alternativet inte har någon Delta Live Tables-kod i sig.För
Include a stub (sample) DLT pipeline
lämnar du standardvärdet föryes
genom att trycka påEnter
. Detta instruerar Databricks CLI att lägga till en exempelanteckningsbok som har Delta Live Tables-kod i den.För
Include a stub (sample) Python package
väljer och trycker duno
påEnter
. Detta instruerar Databricks CLI att inte lägga till pythonhjulspaketfiler eller relaterade bygginstruktioner i ditt paket.
Steg 3: Utforska paketet
Om du vill visa de filer som mallen genererade växlar du till rotkatalogen för det nyligen skapade paketet och öppnar den här katalogen med önskad IDE, till exempel Visual Studio Code. Filer av särskilt intresse omfattar följande:
databricks.yml
: Den här filen anger paketets programmatiska namn, innehåller en referens till pipelinedefinitionen och anger inställningar för målarbetsytan.resources/<project-name>_job.yml
ochresources/<project-name>_pipeline.yml
: Den här filen anger pipelinens inställningar.src/dlt_pipeline.ipynb
: Den här filen är en notebook-fil som kör pipelinen när den körs.
För att anpassa pipelines motsvarar mappningarna i en pipelinedeklaration den skapa pipeline-åtgärdens nyttolast för begäran enligt definitionen i POST /api/2.0/pipelines i REST API-referensen, uttryckt i YAML-format.
Steg 4: Verifiera projektets paketkonfigurationsfil
I det här steget kontrollerar du om paketkonfigurationen är giltig.
Från rotkatalogen använder du Databricks CLI för att köra
bundle validate
kommandot enligt följande:databricks bundle validate
Om en sammanfattning av paketkonfigurationen returneras lyckades verifieringen. Om några fel returneras åtgärdar du felen och upprepar sedan det här steget.
Om du gör några ändringar i paketet efter det här steget bör du upprepa det här steget för att kontrollera om paketkonfigurationen fortfarande är giltig.
Steg 5: Distribuera det lokala projektet till fjärrarbetsytan
I det här steget distribuerar du den lokala notebook-filen till din fjärranslutna Azure Databricks-arbetsyta och skapar Delta Live Tables-pipelinen på din arbetsyta.
Använd Databricks CLI för att köra kommandot på
bundle validate
följande sätt:databricks bundle deploy -t dev
Kontrollera om den lokala notebook-filen har distribuerats: Klicka på Arbetsyta i sidofältet på azure Databricks-arbetsytan.
Klicka i mappen Användare >
<your-username>
> .bundle >><project-name>
dev > files > src. Anteckningsboken ska finnas i den här mappen.Kontrollera om pipelinen har skapats: Klicka på Delta Live Tables i sidofältet på azure Databricks-arbetsytan.
På fliken Delta Live Tables (Delta Live Tables ) klickar du på [dev
<your-username>
]<project-name>
_pipeline.
Om du gör några ändringar i paketet efter det här steget bör du upprepa steg 4–5 för att kontrollera om paketkonfigurationen fortfarande är giltig och sedan distribuera om projektet.
Steg 6: Kör det distribuerade projektet
I det här steget kör du Delta Live Tables-pipelinen på din arbetsyta.
Från rotkatalogen använder du Databricks CLI för att köra
bundle run
kommandot enligt följande och ersätter<project-name>
med namnet på projektet från steg 2:databricks bundle run -t dev <project-name>_pipeline
Kopiera värdet
Update URL
för som visas i terminalen och klistra in det här värdet i webbläsaren för att öppna Azure Databricks-arbetsytan.När pipelinen har slutförts på din Azure Databricks-arbetsyta klickar du på vyn taxi_raw och den filtered_taxis materialiserade vyn för att se informationen.
Om du gör några ändringar i paketet efter det här steget bör du upprepa steg 4–6 för att kontrollera om paketkonfigurationen fortfarande är giltig, distribuera om projektet och köra det omdistribuerade projektet.
Steg 7: Rensa
I det här steget tar du bort den distribuerade notebook-filen och pipelinen från arbetsytan.
Från rotkatalogen använder du Databricks CLI för att köra
bundle destroy
kommandot enligt följande:databricks bundle destroy -t dev
Bekräfta begäran om borttagning av pipeline: När du uppmanas att permanent förstöra resurser skriver
y
du och trycker påEnter
.Bekräfta begäran om borttagning av notebook-filer: När du uppmanas att permanent förstöra den tidigare distribuerade mappen och alla dess filer skriver
y
du och trycker påEnter
.Om du också vill ta bort paketet från utvecklingsdatorn kan du nu ta bort den lokala katalogen från steg 2.
Du har nått slutet av stegen för att skapa ett paket med hjälp av en mall.
Skapa paketet manuellt
I de här stegen skapar du paketet från början. De här stegen hjälper dig att skapa ett paket som består av en notebook-fil med inbäddade Delta Live Tables-direktiv och definitionen av en Delta Live Tables-pipeline för att köra den här notebook-filen. Sedan validerar, distribuerar och kör du den distribuerade notebook-filen från pipelinen på din Azure Databricks-arbetsyta.
Steg 1: Skapa paketet
Ett paket innehåller de artefakter som du vill distribuera och inställningarna för de arbetsflöden som du vill köra.
- Skapa eller identifiera en tom katalog på utvecklingsdatorn.
- Växla till den tomma katalogen i terminalen eller öppna den tomma katalogen i din IDE.
Dricks
Den tomma katalogen kan associeras med en klonad lagringsplats som hanteras av en Git-provider. På så sätt kan du hantera ditt paket med extern versionskontroll och samarbeta enklare med andra utvecklare och IT-proffs i ditt projekt. Men för att förenkla den här demonstrationen används inte en klonad lagringsplats här.
Om du väljer att klona en lagringsplats för den här demonstrationen rekommenderar Databricks att lagringsplatsen är tom eller bara har grundläggande filer i den, till exempel README
och .gitignore
. Annars kan befintliga filer på lagringsplatsen synkroniseras i onödan till din Azure Databricks-arbetsyta.
Steg 2: Lägg till en notebook-fil i projektet
I det här steget lägger du till en notebook-fil i projektet. Den här notebook-filen gör följande:
- Läser råa JSON-klickströmsdata från Databricks-datauppsättningar till en rå Delta-tabell i mappen i
pipelines
azure Databricks-arbetsytans DBFS-rotmapp. - Läser poster från den råa Delta-tabellen och använder en Delta Live Tables-fråga och förväntningar för att skapa en ny Delta-tabell med rensade och förberedda data.
- Utför en analys av förberedda data i den nya Delta-tabellen med en Delta Live Tables-fråga.
Från katalogens rot skapar du en fil med namnet
dlt-wikipedia-python.py
.Lägg till följande kod i
dlt-wikipedia-python.py
-filen:# Databricks notebook source import dlt from pyspark.sql.functions import * # COMMAND ---------- json_path = "/databricks-datasets/wikipedia-datasets/data-001/clickstream/raw-uncompressed-json/2015_2_clickstream.json" # COMMAND ---------- @dlt.table( comment="The raw wikipedia clickstream dataset, ingested from /databricks-datasets." ) def clickstream_raw(): return (spark.read.format("json").load(json_path)) # COMMAND ---------- @dlt.table( comment="Wikipedia clickstream data cleaned and prepared for analysis." ) @dlt.expect("valid_current_page_title", "current_page_title IS NOT NULL") @dlt.expect_or_fail("valid_count", "click_count > 0") def clickstream_prepared(): return ( dlt.read("clickstream_raw") .withColumn("click_count", expr("CAST(n AS INT)")) .withColumnRenamed("curr_title", "current_page_title") .withColumnRenamed("prev_title", "previous_page_title") .select("current_page_title", "click_count", "previous_page_title") ) # COMMAND ---------- @dlt.table( comment="A table containing the top pages linking to the Apache Spark page." ) def top_spark_referrers(): return ( dlt.read("clickstream_prepared") .filter(expr("current_page_title == 'Apache_Spark'")) .withColumnRenamed("previous_page_title", "referrer") .sort(desc("click_count")) .select("referrer", "click_count") .limit(10) )
Steg 3: Lägg till en paketkonfigurationsschemafil i projektet
Om du använder en IDE som Visual Studio Code, PyCharm Professional eller IntelliJ IDEA Ultimate som ger stöd för YAML-filer och JSON-schemafiler kan du använda din IDE för att inte bara skapa paketkonfigurationsschemafilen utan för att kontrollera projektets paketkonfigurationsfilsyntax och formatering och ge tips om kodkomplettering. enligt följande. Observera att även om paketkonfigurationsfilen som du skapar senare i steg 5 är YAML-baserad, är paketkonfigurationsschemafilen i det här steget JSON-baserad.
Visual Studio Code
Lägg till stöd för YAML-språkservern i Visual Studio Code, till exempel genom att installera YAML-tillägget från Visual Studio Code Marketplace.
Generera JSON-schemafilen för Databricks Asset Bundle-konfigurationen med hjälp av Databricks CLI för att köra
bundle schema
kommandot och omdirigera utdata till en JSON-fil. Generera till exempel en fil med namnetbundle_config_schema.json
i den aktuella katalogen enligt följande:databricks bundle schema > bundle_config_schema.json
Observera att du senare i steg 5 lägger till följande kommentar i början av paketkonfigurationsfilen, som associerar din paketkonfigurationsfil med den angivna JSON-schemafilen:
# yaml-language-server: $schema=bundle_config_schema.json
Kommentar
Om din JSON-schemafil för Databricks Asset Bundle finns i en annan sökväg i föregående kommentar ersätter du
bundle_config_schema.json
med den fullständiga sökvägen till schemafilen.
Pycharm professsional
Generera JSON-schemafilen för Databricks Asset Bundle-konfigurationen med hjälp av Databricks CLI för att köra
bundle schema
kommandot och omdirigera utdata till en JSON-fil. Generera till exempel en fil med namnetbundle_config_schema.json
i den aktuella katalogen enligt följande:databricks bundle schema > bundle_config_schema.json
Konfigurera PyCharm för att identifiera JSON-schemafilen för paketkonfiguration och slutför sedan JSON-schemamappningen genom att följa anvisningarna i Konfigurera ett anpassat JSON-schema.
Observera att du senare i steg 5 använder PyCharm för att skapa eller öppna en paketkonfigurationsfil. Enligt konventionen heter
databricks.yml
den här filen .
Intellij idea ultimate
Generera JSON-schemafilen för Databricks Asset Bundle-konfigurationen med hjälp av Databricks CLI för att köra
bundle schema
kommandot och omdirigera utdata till en JSON-fil. Generera till exempel en fil med namnetbundle_config_schema.json
i den aktuella katalogen enligt följande:databricks bundle schema > bundle_config_schema.json
Konfigurera IntelliJ IDEA för att identifiera JSON-schemafilen för paketkonfiguration och slutför sedan JSON-schemamappningen genom att följa anvisningarna i Konfigurera ett anpassat JSON-schema.
Observera att du senare i steg 5 använder IntelliJ IDEA för att skapa eller öppna en paketkonfigurationsfil. Enligt konventionen heter
databricks.yml
den här filen .
Steg 4: Konfigurera autentisering
I det här steget konfigurerar du autentisering mellan Databricks CLI på utvecklingsdatorn och Azure Databricks-arbetsytan. Den här artikeln förutsätter att du vill använda U2M-autentisering (OAuth user-to-machine) och en motsvarande Azure Databricks-konfigurationsprofil med namnet DEFAULT
för autentisering.
Kommentar
U2M-autentisering är lämpligt för att prova de här stegen i realtid. För helt automatiserade arbetsflöden rekommenderar Databricks att du använder M2M-autentisering (machine-to-machine) för OAuth i stället. Se installationsinstruktionerna för M2M-autentisering i Autentisering.
Använd Databricks CLI för att initiera OAuth-tokenhantering lokalt genom att köra följande kommando för varje målarbetsyta.
I följande kommando ersätter du
<workspace-url>
med url:en för Azure Databricks per arbetsyta, till exempelhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
Databricks CLI uppmanar dig att spara den information som du angav som en Azure Databricks-konfigurationsprofil. Tryck
Enter
för att acceptera det föreslagna profilnamnet eller ange namnet på en ny eller befintlig profil. Alla befintliga profiler med samma namn skrivs över med den information som du angav. Du kan använda profiler för att snabbt växla autentiseringskontext över flera arbetsytor.Om du vill hämta en lista över befintliga profiler i en separat terminal eller kommandotolk använder du Databricks CLI för att köra kommandot
databricks auth profiles
. Om du vill visa en specifik profils befintliga inställningar kör du kommandotdatabricks auth env --profile <profile-name>
.I webbläsaren slutför du anvisningarna på skärmen för att logga in på din Azure Databricks-arbetsyta.
Om du vill visa en profils aktuella OAuth-tokenvärde och tokens kommande förfallotidsstämpel kör du något av följande kommandon:
databricks auth token --host <workspace-url>
databricks auth token -p <profile-name>
databricks auth token --host <workspace-url> -p <profile-name>
Om du har flera profiler med samma
--host
värde kan du behöva ange--host
alternativen och-p
tillsammans för att hjälpa Databricks CLI att hitta rätt matchande OAuth-tokeninformation.
Steg 5: Lägg till en paketkonfigurationsfil i projektet
I det här steget definierar du hur du vill distribuera och köra den här notebook-filen. I den här demonstrationen vill du använda en Delta Live Tables-pipeline för att köra notebook-filen. Du modellerar det här målet i en paketkonfigurationsfil i projektet.
- Från katalogens rot använder du din favorittextredigerare eller din IDE för att skapa paketkonfigurationsfilen. Enligt konventionen heter
databricks.yml
den här filen . - Lägg till följande kod i
databricks.yml
filen och ersätt<workspace-url>
med url:en per arbetsyta, till exempelhttps://adb-1234567890123456.7.azuredatabricks.net
. Den här URL:en måste matcha den i.databrickscfg
filen:
Dricks
Den första raden, som börjar med # yaml-language-server
, krävs endast om din IDE stöder den. Mer information finns i Steg 3 tidigare.
# yaml-language-server: $schema=bundle_config_schema.json
bundle:
name: dlt-wikipedia
resources:
pipelines:
dlt-wikipedia-pipeline:
name: dlt-wikipedia-pipeline
development: true
continuous: false
channel: "CURRENT"
photon: false
libraries:
- notebook:
path: ./dlt-wikipedia-python.py
edition: "ADVANCED"
clusters:
- label: "default"
num_workers: 1
targets:
development:
workspace:
host: <workspace-url>
För att anpassa pipelines motsvarar mappningarna i en pipelinedeklaration den skapa pipeline-åtgärdens nyttolast för begäran enligt definitionen i POST /api/2.0/pipelines i REST API-referensen, uttryckt i YAML-format.
Steg 6: Verifiera projektets paketkonfigurationsfil
I det här steget kontrollerar du om paketkonfigurationen är giltig.
Använd Databricks CLI för att köra
bundle validate
kommandot enligt följande:databricks bundle validate
Om en sammanfattning av paketkonfigurationen returneras lyckades verifieringen. Om några fel returneras åtgärdar du felen och upprepar sedan det här steget.
Om du gör några ändringar i paketet efter det här steget bör du upprepa det här steget för att kontrollera om paketkonfigurationen fortfarande är giltig.
Steg 7: Distribuera det lokala projektet till fjärrarbetsytan
I det här steget distribuerar du den lokala notebook-filen till din fjärranslutna Azure Databricks-arbetsyta och skapar Delta Live Tables-pipelinen på din arbetsyta.
Använd Databricks CLI för att köra kommandot på
bundle validate
följande sätt:databricks bundle deploy -t development
Kontrollera om den lokala notebook-filen har distribuerats: Klicka på Arbetsyta i sidofältet på azure Databricks-arbetsytan.
Klicka på mappen Users .bundle dlt-wikipedia development files (Användare>
<your-username>
> .bundle > dlt-wikipedia > development > files). Anteckningsboken ska finnas i den här mappen.Kontrollera om Delta Live Tables-pipelinen har skapats: Klicka på Arbetsflöden i azure Databricks-arbetsytans sidofält.
På fliken Delta Live Tables (Delta Live Tables ) klickar du på dlt-wikipedia-pipeline.
Om du gör några ändringar i paketet efter det här steget bör du upprepa steg 6–7 för att kontrollera om paketkonfigurationen fortfarande är giltig och sedan distribuera om projektet.
Steg 8: Kör det distribuerade projektet
I det här steget kör du Azure Databricks-jobbet på din arbetsyta.
Använd Databricks CLI för att köra
bundle run
kommandot enligt följande:databricks bundle run -t development dlt-wikipedia-pipeline
Kopiera värdet
Update URL
för som visas i terminalen och klistra in det här värdet i webbläsaren för att öppna Azure Databricks-arbetsytan.När Delta Live Tables-pipelinen har slutförts på din Azure Databricks-arbetsyta och visar gröna namnlister i de olika materialiserade vyerna klickar du på clickstream_raw, clickstream_prepared eller top_spark_referrers materialiserade vyer för att se mer information.
Innan du börjar nästa steg för att rensa bör du notera platsen för deltatabellerna som skapats i DBFS på följande sätt. Du behöver den här informationen om du vill rensa deltatabellerna manuellt senare:
- När Delta Live Tables-pipelinen fortfarande är öppen klickar du på knappen Inställningar (bredvid knapparna Behörigheter och Schema).
- I området Mål noterar du värdet för fältet Lagringsplats . Det är här deltatabellerna skapades i DBFS.
Om du gör några ändringar i paketet efter det här steget bör du upprepa steg 6–8 för att kontrollera om paketkonfigurationen fortfarande är giltig, distribuera om projektet och köra det omdistribuerade projektet.
Steg 9: Rensa
I det här steget tar du bort den distribuerade notebook-filen och Delta Live Tables-pipelinen från din arbetsyta.
Använd Databricks CLI för att köra
bundle destroy
kommandot enligt följande:databricks bundle destroy
Bekräfta begäran om borttagning av Delta Live Tables-pipelinen: När du uppmanas att permanent förstöra resurser skriver
y
du och trycker påEnter
.Bekräfta begäran om borttagning av notebook-filer: När du uppmanas att permanent förstöra den tidigare distribuerade mappen och alla dess filer skriver
y
du och trycker påEnter
.
bundle destroy
När kommandot körs tas endast den distribuerade Delta Live Tables-pipelinen bort och mappen som innehåller den distribuerade notebook-filen. Det här kommandot tar inte bort några biverkningar, till exempel Delta-tabellerna som notebook-filen skapade i DBFS. Om du behöver ta bort deltatabellerna måste du göra det manuellt.
Lägga till en befintlig pipelinedefinition i ett paket
Du kan använda en befintlig pipelinedefinition för Delta Live Tables som grund för att definiera en ny pipeline i en paketkonfigurationsfil. Följ stegen nedan.
Kommentar
Följande steg skapar en ny pipeline som har samma inställningar som den befintliga pipelinen. Den nya pipelinen har dock ett annat pipeline-ID än den befintliga pipelinen. Du kan inte automatiskt importera ett befintligt pipeline-ID till ett paket.
Steg 1: Hämta den befintliga pipelinedefinitionen i JSON-format
I det här steget använder du användargränssnittet för Azure Databricks-arbetsytan för att hämta JSON-representationen av den befintliga pipelinedefinitionen.
- I sidofältet för Azure Databricks-arbetsytan klickar du på Arbetsflöden.
- På fliken Delta Live Tables (Delta Live Tables) klickar du på pipelinens namnlänk.
- Klicka på knappen Inställningar mellan knapparna Behörigheter och Schema.
- Klicka på JSON-knappen .
- Kopiera pipelinedefinitionens JSON.
Steg 2: Konvertera pipelinedefinitionen från JSON till YAML-format
Pipelinedefinitionen som du kopierade från föregående steg är i JSON-format. Paketkonfigurationerna är i YAML-format. Du måste konvertera pipelinedefinitionen från JSON till YAML-format. Databricks rekommenderar följande resurser för att konvertera JSON till YAML:
- Konvertera JSON till YAML online.
- För Visual Studio Code är json2yaml-tillägget .
Steg 3: Lägg till pipelinedefinitionen YAML i en paketkonfigurationsfil
I paketkonfigurationsfilen lägger du till YAML som du kopierade från föregående steg till någon av följande platser som är märkta i paketkonfigurationsfilerna <pipeline-yaml-can-go-here>
på följande sätt:
resources:
pipelines:
<some-unique-programmatic-identifier-for-this-pipeline>:
<pipeline-yaml-can-go-here>
targets:
<some-unique-programmatic-identifier-for-this-target>:
resources:
pipelines:
<some-unique-programmatic-identifier-for-this-pipeline>:
<pipeline-yaml-can-go-here>
Steg 4: Lägg till notebook-filer, Python-filer och andra artefakter i paketet
Alla Python-filer och notebook-filer som refereras till i den befintliga pipelinen bör flyttas till paketets källor.
För bättre kompatibilitet med paket bör notebook-filer använda IPython Notebook-format (.ipynb
). Om du utvecklar paketet lokalt kan du exportera en befintlig notebook-fil från en Azure Databricks-arbetsyta till .ipynb
formatet genom att klicka på Arkivexportera >> IPython Notebook från användargränssnittet för Azure Databricks Notebook. Enligt konventionen bör du sedan placera den nedladdade anteckningsboken src/
i katalogen i ditt paket.
När du har lagt till dina notebook-filer, Python-filer och andra artefakter i paketet kontrollerar du att pipelinedefinitionen refererar till dem. För en notebook-fil med filnamnet hello.ipynb
som finns i en src/
katalog, och src/
katalogen finns i samma mapp som paketkonfigurationsfilen som refererar till src/
katalogen, kan pipelinedefinitionen uttryckas på följande sätt:
resources:
pipelines:
hello-pipeline:
name: hello-pipeline
libraries:
-
notebook:
path: ./src/hello.ipynb
Steg 5: Verifiera, distribuera och kör den nya pipelinen
Kontrollera att paketets konfigurationsfiler är syntaktiskt korrekta genom att köra följande kommando:
databricks bundle validate
Distribuera paketet genom att köra följande kommando. I det här kommandot ersätter du
<target-identifier>
med den unika programmatiska identifieraren för målet från paketkonfigurationen:databricks bundle deploy -t <target-identifier>
Kör pipelinen genom att köra följande kommando. Ersätt följande i det här kommandot:
- Ersätt
<target-identifier>
med den unika programmatiska identifieraren för målet från paketkonfigurationen. - Ersätt
<pipeline-identifier>
med unik programmatisk identifierare för pipelinen från paketkonfigurationen.
databricks bundle run -t <target-identifier> <pipeline-identifier>
- Ersätt
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för