Sdílet prostřednictvím


Vývoj úlohy v Azure Databricks pomocí sad prostředků Databricks

Sady prostředků Databricks, označované také jako sady, umožňují programově ověřovat, nasazovat a spouštět prostředky Azure Databricks, jako jsou úlohy. Balíčky můžete použít také k programové správě kanálů Delta Live Tables a práci se zásobníky MLOps. Podívejte se, co jsou sady prostředků Databricks?

Tento článek popisuje kroky, které můžete provést z místního nastavení vývoje, abyste mohli použít sadu, která programově spravuje úlohu. Viz Úvod do pracovních postupů Azure Databricks.

Pokud máte existující úlohy, které byly vytvořeny pomocí uživatelského rozhraní pracovních postupů Azure Databricks nebo rozhraní API, které chcete přesunout do sad, musíte je znovu vytvořit jako konfigurační soubory sady. Databricks proto doporučuje, abyste nejprve vytvořili sadu pomocí následujícího postupu a ověřili, jestli sada funguje. Do sady pak můžete přidat definice úloh, poznámkové bloky a další zdroje. Viz Přidání existující definice úlohy do sady.

Kromě použití rozhraní příkazového řádku Databricks ke spuštění úlohy nasazené sadou můžete tyto úlohy také zobrazit a spustit v uživatelském rozhraní úloh Azure Databricks. Viz Zobrazení a spuštění úlohy vytvořené pomocí sady prostředků Databricks.

Požadavky

  • Databricks CLI verze 0.218 nebo novější Pokud chcete zkontrolovat nainstalovanou verzi rozhraní příkazového řádku Databricks, spusťte příkaz databricks -v. Pokud chcete nainstalovat rozhraní příkazového řádku Databricks, přečtěte si téma Instalace nebo aktualizace rozhraní příkazového řádku Databricks.

Rozhodnutí: Vytvoření sady pomocí šablony nebo ručně

Rozhodněte se, jestli chcete vytvořit ukázkovou sadu pomocí šablony, nebo ručně:

Vytvoření sady pomocí šablony

V těchto krocích vytvoříte sadu pomocí výchozí šablony sady Azure Databricks pro Python, která se skládá z poznámkového bloku nebo kódu Pythonu spárovaného s definicí úlohy, která ji spustí. Pak ověříte, nasadíte a spustíte nasazenou úlohu v rámci pracovního prostoru Azure Databricks. Vzdálený pracovní prostor musí mít povolené soubory pracovního prostoru. Podívejte se, co jsou soubory pracovního prostoru?

Krok 1: Nastavení ověřování

V tomto kroku nastavíte ověřování mezi Rozhraním příkazového řádku Databricks na vývojovém počítači a pracovním prostorem Azure Databricks. Tento článek předpokládá, že chcete použít ověřování U2M (user-to-machine) OAuth a odpovídající konfigurační profil Azure Databricks s názvem DEFAULT ověřování.

Poznámka:

Ověřování U2M je vhodné pro vyzkoušení těchto kroků v reálném čase. Pro plně automatizované pracovní postupy doporučuje Databricks místo toho použít ověřování M2M (machine-to-machine). Viz pokyny k nastavení ověřování M2M v části Ověřování.

  1. Pomocí rozhraní příkazového řádku Databricks zahajte správu tokenů OAuth místně spuštěním následujícího příkazu pro každý cílový pracovní prostor.

    V následujícím příkazu nahraďte <workspace-url> adresou URL služby Azure Databricks pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. Rozhraní příkazového řádku Databricks vás vyzve k uložení informací, které jste zadali jako konfigurační profil Azure Databricks. Stisknutím klávesy Enter potvrďte navrhovaný název profilu nebo zadejte název nového nebo existujícího profilu. Všechny existující profily se stejným názvem se přepíšou informacemi, které jste zadali. Profily můžete použít k rychlému přepnutí kontextu ověřování napříč několika pracovními prostory.

    Pokud chcete získat seznam všech existujících profilů, v samostatném terminálu nebo příkazovém řádku spusťte příkaz databricks auth profilespomocí rozhraní příkazového řádku Databricks . Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkaz databricks auth env --profile <profile-name>.

  3. Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.

  4. Pokud chcete zobrazit aktuální hodnotu tokenu OAuth profilu a nadcházející časové razítko vypršení platnosti tokenu, spusťte jeden z následujících příkazů:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Pokud máte více profilů se stejnou --host hodnotou, možná budete muset zadat --host společně možnosti a -p pomoct rozhraní příkazového řádku Databricks najít správné odpovídající informace o tokenu OAuth.

Krok 2: Vytvoření sady

Sada obsahuje artefakty, které chcete nasadit, a nastavení pro prostředky, které chcete spustit.

  1. Pomocí terminálu nebo příkazového řádku přepněte do adresáře na místním vývojovém počítači, který bude obsahovat vygenerovanou sadu šablony.

  2. Ke spuštění příkazu použijte rozhraní příkazového bundle init řádku Dataricks:

    databricks bundle init
    
  3. Pro Template to use, ponechte výchozí hodnotu default-python stisknutím klávesy Enter.

  4. Pro Unique name for this project, ponechte výchozí hodnotu my_project, nebo zadejte jinou hodnotu a stiskněte Enter. Určuje název kořenového adresáře pro tuto sadu. Tento kořenový adresář se vytvoří v aktuálním pracovním adresáři.

  5. Pro Include a stub (sample) notebook, vyberte yes a stiskněte Enter.

  6. Pro Include a stub (sample) DLT pipeline, vyberte no a stiskněte Enter. To dává rozhraní příkazového řádku Databricks pokyn, aby ve vaší sadě nedefinoval ukázkový kanál dynamických tabulek Delta.

  7. Pro Include a stub (sample) Python package, vyberte no a stiskněte Enter. To dává rozhraní příkazového řádku Databricks pokyn, aby do sady nepřidávejte ukázkové soubory balíčků kol Pythonu ani související pokyny k sestavení.

Krok 3: Prozkoumání sady

Pokud chcete zobrazit soubory, které šablona vygenerovala, přepněte do kořenového adresáře nově vytvořené sady prostředků a otevřete tento adresář s upřednostňovaným integrovaným vývojovém prostředím ( například Visual Studio Code). Mezi soubory, které mají zvláštní zájem, patří:

  • databricks.yml: Tento soubor určuje programový název sady, obsahuje odkaz na definici úlohy a určuje nastavení cílového pracovního prostoru.
  • resources/<project-name>_job.yml: Tento soubor určuje nastavení úlohy, včetně výchozího úkolu poznámkového bloku.
  • src/notebook.ipynb: Tento soubor je ukázkový poznámkový blok, který při spuštění jednoduše inicializuje sadu RDD obsahující čísla 1 až 10.

Pro přizpůsobení úloh mapování v deklaraci úlohy odpovídají datové části požadavku operace vytvoření, jak je definováno v POST /api/2.1/jobs/create v odkazu na rozhraní REST API vyjádřené ve formátu YAML.

Tip

Nastavení nových clusterů úloh v balíčcích můžete definovat, kombinovat a přepsat pomocí technik popsaných v nastavení clusteru v sadě prostředků Databricks.

Krok 4: Ověření konfiguračního souboru sady projektů

V tomto kroku zkontrolujete, jestli je konfigurace sady platná.

  1. Z kořenového adresáře spusťte bundle validate příkaz pomocí rozhraní příkazového řádku Databricks následujícím způsobem:

    databricks bundle validate
    
  2. Pokud se vrátí souhrn konfigurace sady, ověření proběhlo úspěšně. Pokud se vrátí nějaké chyby, opravte chyby a opakujte tento krok.

Pokud po tomto kroku provedete nějaké změny sady, měli byste tento krok zopakovat a zkontrolovat, jestli je konfigurace sady stále platná.

Krok 5: Nasazení místního projektu do vzdáleného pracovního prostoru

V tomto kroku nasadíte místní poznámkový blok do vzdáleného pracovního prostoru Azure Databricks a v pracovním prostoru vytvoříte úlohu Azure Databricks.

  1. V kořenovém adresáři sady spusťte příkaz pomocí rozhraní příkazového řádku bundle deploy Databricks následujícím způsobem:

    databricks bundle deploy -t dev
    
  2. Zkontrolujte, jestli byl místní poznámkový blok nasazený: Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní prostor.

  3. Klikněte do složky src pro soubory Users ><your-username>> .bundle<project-name>>> dev.>> Poznámkový blok by měl být v této složce.

  4. Zkontrolujte, jestli byla úloha vytvořená: Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní postupy.

  5. Na kartě Úlohy klikněte na [dev<your-username>] <project-name>_job.

  6. Klikněte na kartu Úkoly . Měl by existovat jeden úkol: notebook_task.

Pokud po tomto kroku provedete nějaké změny v sadě, měli byste zopakovat kroky 4 až 5, abyste zkontrolovali, jestli je konfigurace sady stále platná, a pak projekt znovu nasaďte.

Krok 6: Spuštění nasazeného projektu

V tomto kroku spustíte úlohu Azure Databricks ve svém pracovním prostoru.

  1. V kořenovém adresáři spusťte příkaz pomocí rozhraní příkazového řádku bundle run Databricks následujícím způsobem a nahraďte <project-name> ho názvem projektu z kroku 2:

    databricks bundle run -t dev <project-name>_job
    
  2. Zkopírujte hodnotu, která se zobrazí v terminálu, a vložte ji do webového Run URL prohlížeče, aby se otevřel pracovní prostor Azure Databricks.

  3. Po úspěšném dokončení úlohy a zobrazení zeleného záhlaví pracovního prostoru Azure Databricks zobrazte výsledky kliknutím na úkol úlohy.

Pokud po tomto kroku provedete nějaké změny sady, měli byste zopakovat kroky 4 až 6, abyste zkontrolovali, jestli je konfigurace sady stále platná, znovu nasaďte projekt a spusťte znovu nasazený projekt.

Krok 7: Vyčištění

V tomto kroku odstraníte nasazený poznámkový blok a úlohu z pracovního prostoru.

  1. Z kořenového adresáře spusťte bundle destroy příkaz pomocí rozhraní příkazového řádku Databricks následujícím způsobem:

    databricks bundle destroy
    
  2. Potvrďte žádost o odstranění úlohy: Po zobrazení výzvy k trvalému zničení prostředků zadejte y a stiskněte Enter.

  3. Potvrďte žádost o odstranění poznámkového bloku: Po zobrazení výzvy k trvalému zničení dříve nasazené složky a všech jejích souborů zadejte y a stiskněte Enter.

  4. Pokud chcete také odstranit sadu z vývojového počítače, můžete teď odstranit místní adresář z kroku 2.

Dosáhli jste konce kroků pro vytvoření sady pomocí šablony.

Ruční vytvoření sady

V těchto krocích vytvoříte sadu úplně od začátku. Tato jednoduchá sada obsahuje dva poznámkové bloky a definici úlohy Azure Databricks pro spuštění těchto poznámkových bloků. Pak ověříte, nasadíte a spustíte nasazené poznámkové bloky z úlohy v pracovním prostoru Azure Databricks. Tento postup automatizuje rychlý start s názvem Vytvoření prvního pracovního postupu pomocí úlohy Azure Databricks.

Krok 1: Vytvoření sady

Sada obsahuje artefakty, které chcete nasadit, a nastavení pro prostředky, které chcete spustit.

  1. Vytvořte nebo identifikujte prázdný adresář na vývojovém počítači.
  2. Přepněte do prázdného adresáře v terminálu nebo otevřete prázdný adresář v integrovaném vývojovém prostředí ( IDE).

Tip

Váš prázdný adresář může být přidružený ke klonovanému úložišti spravovanému poskytovatelem Gitu. To vám umožní spravovat sadu s externí správou verzí a snadněji spolupracovat s dalšími vývojáři a odborníky v OBLASTI IT na vašem projektu. Pro zjednodušení této ukázky se zde ale klonované úložiště nepoužívá.

Pokud se rozhodnete naklonovat úložiště pro tuto ukázku, Databricks doporučuje, aby úložiště bylo prázdné nebo obsahuje pouze základní soubory, například README a .gitignore. Jinak se všechny existující soubory v úložišti můžou zbytečně synchronizovat s pracovním prostorem Azure Databricks.

Krok 2: Přidání poznámkových bloků do projektu

V tomto kroku přidáte do projektu dva poznámkové bloky. První poznámkový blok získá seznam populárních jmen dětí od roku 2007 z veřejných zdrojů dat ministerstva zdravotnictví v New Yorku. Viz Jména dítěte: Trend by Name: Začátek 2007 na webu oddělení. První poznámkový blok pak uloží tato data do svazku katalogu Azure Databricks Unity s názvem my-volume ve schématu default pojmenovaném v katalogu main. Druhý poznámkový blok se dotazuje na uložená data a zobrazí agregované počty jmen dítěte podle křestního jména a pohlaví pro 2014.

  1. V kořenovém adresáři vytvořte první poznámkový blok s názvem retrieve-baby-names.py.

  2. Do souboru retrieve-baby-names.py přidejte následující kód:

    # Databricks notebook source
    import requests
    
    response = requests.get('http://health.data.ny.gov/api/views/jxy9-yhdk/rows.csv')
    csvfile = response.content.decode('utf-8')
    dbutils.fs.put("/Volumes/main/default/my-volume/babynames.csv", csvfile, True)
    
  3. Ve stejném adresáři vytvořte druhý poznámkový blok s názvem soubor s názvem filter-baby-names.py.

  4. Do souboru filter-baby-names.py přidejte následující kód:

    # Databricks notebook source
    babynames = spark.read.format("csv").option("header", "true").option("inferSchema", "true").load("/Volumes/main/default/my-volume/babynames.csv")
    babynames.createOrReplaceTempView("babynames_table")
    years = spark.sql("select distinct(Year) from babynames_table").toPandas()['Year'].tolist()
    years.sort()
    dbutils.widgets.dropdown("year", "2014", [str(x) for x in years])
    display(babynames.filter(babynames.Year == dbutils.widgets.get("year")))
    

Krok 3: Přidání souboru schématu konfigurace sady do projektu

Pokud používáte integrované vývojové prostředí (IDE), jako je Visual Studio Code, PyCharm Professional nebo IntelliJ IDEA Ultimate, které poskytuje podporu pro soubory YAML a soubory schématu JSON, můžete pomocí integrovaného vývojového prostředí (IDE) nejen vytvořit soubor konfiguračního schématu sady prostředků, ale zkontrolovat syntaxi a formátování konfiguračního souboru projektu a poskytnout nápovědu k dokončení kódu. Takto. Všimněte si, že zatímco konfigurační soubor sady, který vytvoříte později v kroku 5, je soubor schématu konfigurace sady v tomto kroku založený na formátu JSON.

Visual Studio Code

  1. Přidejte podporu jazykového serveru YAML do editoru Visual Studio Code, například instalací rozšíření YAML z webu Visual Studio Code Marketplace.

  2. Vygenerujte konfigurační soubor schématu JSON sady prostředků Databricks pomocí rozhraní příkazového řádku Databricks a spusťte bundle schema příkaz a přesměrujte výstup do souboru JSON. Například vygenerujte soubor pojmenovaný bundle_config_schema.json v aktuálním adresáři následujícím způsobem:

    databricks bundle schema > bundle_config_schema.json
    
  3. Všimněte si, že později v kroku 5 přidáte následující komentář na začátek konfiguračního souboru sady, který přidruží konfigurační soubor sady k zadanému souboru schématu JSON:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    Poznámka:

    Pokud je soubor schématu JSON konfigurace sady prostředků Databricks v předchozím komentáři v jiné cestě, nahraďte bundle_config_schema.json úplnou cestou k souboru schématu.

Pycharm professional

  1. Vygenerujte konfigurační soubor schématu JSON sady prostředků Databricks pomocí rozhraní příkazového řádku Databricks a spusťte bundle schema příkaz a přesměrujte výstup do souboru JSON. Například vygenerujte soubor pojmenovaný bundle_config_schema.json v aktuálním adresáři následujícím způsobem:

    databricks bundle schema > bundle_config_schema.json
    
  2. Nakonfigurujte PyCharm tak, aby rozpoznal konfigurační soubor schématu JSON sady, a pak dokončete mapování schématu JSON podle pokynů v části Konfigurace vlastního schématu JSON.

  3. Všimněte si, že později v kroku 5 použijete PyCharm k vytvoření nebo otevření konfiguračního souboru sady. Podle konvence má tento soubor název databricks.yml.

Intellij idea ultimate

  1. Vygenerujte konfigurační soubor schématu JSON sady prostředků Databricks pomocí rozhraní příkazového řádku Databricks a spusťte bundle schema příkaz a přesměrujte výstup do souboru JSON. Například vygenerujte soubor pojmenovaný bundle_config_schema.json v aktuálním adresáři následujícím způsobem:

    databricks bundle schema > bundle_config_schema.json
    
  2. Nakonfigurujte IntelliJ IDEA tak, aby rozpoznal konfigurační soubor schématu JSON sady a pak dokončil mapování schématu JSON podle pokynů v části Konfigurace vlastního schématu JSON.

  3. Všimněte si, že později v kroku 5 použijete IntelliJ IDEA k vytvoření nebo otevření konfiguračního souboru sady. Podle konvence má tento soubor název databricks.yml.

Krok 4: Nastavení ověřování

V tomto kroku nastavíte ověřování mezi Rozhraním příkazového řádku Databricks na vývojovém počítači a pracovním prostorem Azure Databricks. Tento článek předpokládá, že chcete použít ověřování U2M (user-to-machine) OAuth a odpovídající konfigurační profil Azure Databricks s názvem DEFAULT ověřování.

Poznámka:

Ověřování U2M je vhodné pro vyzkoušení těchto kroků v reálném čase. Pro plně automatizované pracovní postupy doporučuje Databricks místo toho použít ověřování M2M (machine-to-machine). Viz pokyny k nastavení ověřování M2M v části Ověřování.

  1. Pomocí rozhraní příkazového řádku Databricks zahajte správu tokenů OAuth místně spuštěním následujícího příkazu pro každý cílový pracovní prostor.

    V následujícím příkazu nahraďte <workspace-url> adresou URL služby Azure Databricks pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. Rozhraní příkazového řádku Databricks vás vyzve k uložení informací, které jste zadali jako konfigurační profil Azure Databricks. Stisknutím klávesy Enter potvrďte navrhovaný název profilu nebo zadejte název nového nebo existujícího profilu. Všechny existující profily se stejným názvem se přepíšou informacemi, které jste zadali. Profily můžete použít k rychlému přepnutí kontextu ověřování napříč několika pracovními prostory.

    Pokud chcete získat seznam všech existujících profilů, v samostatném terminálu nebo příkazovém řádku spusťte příkaz databricks auth profilespomocí rozhraní příkazového řádku Databricks . Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkaz databricks auth env --profile <profile-name>.

  3. Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.

  4. Pokud chcete zobrazit aktuální hodnotu tokenu OAuth profilu a nadcházející časové razítko vypršení platnosti tokenu, spusťte jeden z následujících příkazů:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Pokud máte více profilů se stejnou --host hodnotou, možná budete muset zadat --host společně možnosti a -p pomoct rozhraní příkazového řádku Databricks najít správné odpovídající informace o tokenu OAuth.

Krok 5: Přidání konfiguračního souboru sady do projektu

V tomto kroku definujete, jak chcete tyto dva poznámkové bloky nasadit a spustit. Pro tuto ukázku chcete použít úlohu Azure Databricks ke spuštění prvního poznámkového bloku a potom druhého poznámkového bloku. Protože první poznámkový blok ukládá data a druhý poznámkový blok se dotazuje na uložená data, chcete, aby první poznámkový blok byl dokončen před spuštěním druhého poznámkového bloku. Tyto cíle modelujete v rámci konfiguračního souboru sady v projektu.

  1. V kořenovém adresáři vytvořte konfigurační soubor sady s názvem databricks.yml.
  2. Do souboru přidejte následující kód databricks.yml a nahraďte <workspace-url> ho adresou URL pracovního prostoru, například https://adb-1234567890123456.7.azuredatabricks.net. Tato adresa URL se musí shodovat s adresou URL v .databrickscfg souboru:

Tip

První řádek, počínaje # yaml-language-server, je vyžadován pouze v případě, že vaše integrované vývojové prostředí (IDE) ho podporuje. Podrobnosti najdete v kroku 3 výše.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job:
      name: retrieve-filter-baby-names-job
      job_clusters:
        - job_cluster_key: common-cluster
          new_cluster:
            spark_version: 12.2.x-scala2.12
            node_type_id: Standard_DS3_v2
            num_workers: 1
      tasks:
        - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          job_cluster_key: common-cluster
          notebook_task:
            notebook_path: ./filter-baby-names.py

targets:
  development:
    workspace:
      host: <workspace-url>

Pro přizpůsobení úloh mapování v deklaraci úlohy odpovídají datové části požadavku operace vytvoření, jak je definováno v POST /api/2.1/jobs/create v odkazu na rozhraní REST API vyjádřené ve formátu YAML.

Tip

Nastavení nových clusterů úloh v balíčcích můžete definovat, kombinovat a přepsat pomocí technik popsaných v nastavení clusteru v sadě prostředků Databricks.

Krok 6: Ověření konfiguračního souboru sady projektů

V tomto kroku zkontrolujete, jestli je konfigurace sady platná.

  1. Pomocí rozhraní příkazového řádku Databricks spusťte bundle validate příkaz následujícím způsobem:

    databricks bundle validate
    
  2. Pokud se vrátí souhrn konfigurace sady, ověření proběhlo úspěšně. Pokud se vrátí nějaké chyby, opravte chyby a opakujte tento krok.

Pokud po tomto kroku provedete nějaké změny sady, měli byste tento krok zopakovat a zkontrolovat, jestli je konfigurace sady stále platná.

Krok 7: Nasazení místního projektu do vzdáleného pracovního prostoru

V tomto kroku nasadíte dva místní poznámkové bloky do vzdáleného pracovního prostoru Azure Databricks a v pracovním prostoru vytvoříte úlohu Azure Databricks.

  1. Pomocí rozhraní příkazového řádku Databricks spusťte bundle deploy příkaz následujícím způsobem:

    databricks bundle deploy -t development
    
  2. Zkontrolujte, jestli byly nasazeny dva místní poznámkové bloky: Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní prostor.

  3. Klikněte do složky Vývojové soubory Users >><your-username>.bundle > pro názvy >> dětí. Tyto dva poznámkové bloky by měly být v této složce.

  4. Zkontrolujte, jestli byla úloha vytvořená: Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní postupy.

  5. Na kartě Úlohy klikněte na retrieve-filter-baby-names-job.

  6. Klikněte na kartu Úkoly . Měly by existovat dva úkoly: načtení jmen dětí a filtrování názvů dětí – úkol.

Pokud po tomto kroku provedete nějaké změny v sadě, měli byste zopakovat kroky 6 až 7, abyste zkontrolovali, jestli je konfigurace sady stále platná, a pak projekt znovu nasaďte.

Krok 8: Spuštění nasazeného projektu

V tomto kroku spustíte úlohu Azure Databricks ve svém pracovním prostoru.

  1. Pomocí rozhraní příkazového řádku Databricks spusťte bundle run příkaz následujícím způsobem:

    databricks bundle run -t development retrieve-filter-baby-names-job
    
  2. Zkopírujte hodnotu, která se zobrazí v terminálu, a vložte ji do webového Run URL prohlížeče, aby se otevřel pracovní prostor Azure Databricks.

  3. Po úspěšném dokončení dvou úkolů a zobrazení zelených záhlaví v pracovním prostoru Azure Databricks klikněte na úkol úkolu filtru-baby-names-task a zobrazte výsledky dotazu.

Pokud po tomto kroku provedete nějaké změny sady, měli byste zopakovat kroky 6 až 8 a zkontrolovat, jestli je konfigurace sady stále platná, znovu nasaďte projekt a spusťte znovu nasazený projekt.

Krok 9: Vyčištění

V tomto kroku odstraníte dva nasazené poznámkové bloky a úlohu z pracovního prostoru.

  1. Pomocí rozhraní příkazového řádku Databricks spusťte bundle destroy příkaz následujícím způsobem:

    databricks bundle destroy
    
  2. Potvrďte žádost o odstranění úlohy: Po zobrazení výzvy k trvalému zničení prostředků zadejte y a stiskněte Enter.

  3. Potvrďte žádost o odstranění poznámkových bloků: Po zobrazení výzvy k trvalému zničení dříve nasazené složky a všech jejích souborů zadejte y a stiskněte Enter.

Spuštěním příkazu odstraníte bundle destroy jenom nasazenou úlohu a složku obsahující dva nasazené poznámkové bloky. Tento příkaz neodstraní žádné vedlejší účinky, například babynames.csv soubor, který vytvořil první poznámkový blok. Pokud chcete soubor odstranit babybnames.csv , postupujte takto:

  1. Na bočním panelu pracovního prostoru Azure Databricks klikněte na Katalog.
  2. Klikněte na Procházet DBFS.
  3. Klikněte na složku FileStore .
  4. Klikněte na šipku rozevíracího seznamu vedle babynames.csv a klikněte na Odstranit.
  5. Pokud chcete také odstranit sadu z vývojového počítače, můžete teď odstranit místní adresář z kroku 1.

Přidání existující definice úlohy do sady

Existující definici úlohy můžete použít jako základ k definování nové úlohy v konfiguračním souboru sady. Postup je uveden níže.

Poznámka:

Následující kroky vytvoří novou úlohu, která má stejné nastavení jako existující úloha. Nová úloha ale má jiné ID úlohy než existující úloha. Do sady nelze automaticky importovat existující ID úlohy.

Krok 1: Získání existující definice úlohy ve formátu YAML

V tomto kroku pomocí uživatelského rozhraní pracovního prostoru Azure Databricks získejte reprezentaci YAML existující definice úlohy.

  1. Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní postupy.
  2. Na kartě Úlohy klikněte na odkaz Název vaší úlohy.
  3. Vedle tlačítka Spustit nyní klikněte na tři tečky a potom klikněte na Zobrazit YAML.
  4. Na kartě Vytvořit zkopírujte YAML definice úlohy do místní schránky kliknutím na Kopírovat.

Krok 2: Přidání definice úlohy YAML do konfiguračního souboru sady

Do konfiguračního souboru sady přidejte YAML, který jste zkopírovali z předchozího kroku, do jednoho z následujících umístění označených <job-yaml-can-go-here> v konfiguračních souborech sady, a to následujícím způsobem:

resources:
  jobs:
    <some-unique-programmatic-identifier-for-this-job>:
      <job-yaml-can-go-here>

targets:
  <some-unique-programmatic-identifier-for-this-target>:
    resources:
      jobs:
        <some-unique-programmatic-identifier-for-this-job>:
          <job-yaml-can-go-here>

Krok 3: Přidání poznámkových bloků, souborů Pythonu a dalších artefaktů do sady

Všechny soubory a poznámkové bloky Pythonu, na které se odkazuje v existující úloze, by se měly přesunout do zdrojů sady.

Kvůli lepší kompatibilitě se sadami prostředků by poznámkové bloky měly používat formát poznámkového bloku IPython (.ipynb). Pokud sadu vyvíjíte místně, můžete existující poznámkový blok exportovat z pracovního prostoru Azure Databricks do .ipynb formátu kliknutím >na souborový export > IPython Notebook z uživatelského rozhraní poznámkového bloku Azure Databricks. Podle konvence byste pak měli stažený poznámkový blok vložit do src/ adresáře ve vaší sadě.

Po přidání poznámkových bloků, souborů Pythonu a dalších artefaktů do sady se ujistěte, že je definice úlohy odkazuje. Například pro poznámkový blok s názvem hello.ipynb souboru, který je v src/ adresáři, a src/ adresář je ve stejné složce jako konfigurační soubor sady, který odkazuje na src/ adresář, může být definice úlohy vyjádřena takto:

resources:
  jobs:
    hello-job:
      name: hello-job
      tasks:
      - task_key: hello-task
        notebook_task:
          notebook_path: ./src/hello.ipynb

Krok 4: Ověření, nasazení a spuštění nové úlohy

  1. Spuštěním následujícího příkazu ověřte, že jsou konfigurační soubory sady syntakticky správné:

    databricks bundle validate
    
  2. Nasaďte sadu spuštěním následujícího příkazu. V tomto příkazu nahraďte <target-identifier> jedinečným programovým identifikátorem cíle z konfigurace sady:

    databricks bundle deploy -t <target-identifier>
    
  3. Spusťte úlohu pomocí následujícího příkazu.

    databricks bundle run -t <target-identifier> <job-identifier>
    
    • Nahraďte <target-identifier> jedinečným programovým identifikátorem cíle z konfigurace sady.
    • Nahraďte <job-identifier> jedinečným programovým identifikátorem úlohy z konfigurace sady.

Konfigurace úlohy, která používá bezserverové výpočetní prostředky

Důležité

Výpočetní prostředky bez serveru pro pracovní postupy jsou ve verzi Public Preview. Informace o způsobilosti a povolení najdete v tématu Povolení bezserverového výpočetního prostředí ve verzi Public Preview.

Následující příklady ukazují konfigurace sady prostředků pro vytvoření úlohy, která používá bezserverové výpočetní prostředky.

Pokud chcete použít bezserverové výpočetní prostředky ke spuštění úlohy, která zahrnuje úlohy poznámkového bloku, vynecháte job_clusters konfiguraci z konfiguračního souboru sady.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: baby-names

resources:
  jobs:
    retrieve-filter-baby-names-job-serverless:
      name: retrieve-filter-baby-names-job-serverless
      tasks:
        - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./retrieve-baby-names.py
        - task_key: filter-baby-names-task
          depends_on:
            - task_key: retrieve-baby-names-task
          notebook_task:
            notebook_path: ./filter-baby-names.py

  targets:
    development:
      workspace:
        host: <workspace-url>

Pokud chcete ke spuštění úlohy, která zahrnuje úlohy Pythonu, použít bezserverové výpočetní prostředky, zahrňte environments konfiguraci.

# yaml-language-server: $schema=bundle_config_schema.json
bundle:
  name: serverless-python-tasks

resources:
jobs:
  serverless-python-job:
    name: serverless-job-with-python-tasks

    tasks:
      - task_key: wheel-task-1
        python_wheel_task:
          entry_point: main
          package_name: wheel_package
        environment_key: Default

    environments:
      - environment_key: Default
        spec:
          client: "1"
          dependencies:
            - workflows_authoring_toolkit==0.0.1

targets:
  development:
    workspace:
      host: <workspace-url>

Viz Spuštění úlohy Azure Databricks s bezserverovými výpočetními prostředky pro pracovní postupy.