Vývoj deklarativních balíčků automatizace

Tento článek popisuje vývoj a životní cyklus deklarativních automatizačních balíčků. Obecné informace o balíčcích naleznete v tématu Co jsou deklarativní automatizační sady?.

Životní cyklus sady

Abyste pochopili, jak efektivně používat sady, musíte porozumět základnímu životnímu cyklu sady:

  1. Kostra sady se vytvoří na základě projektu.
  2. Projekt sady se vyvíjí místně. Sada obsahuje konfigurační soubory, které definují nastavení infrastruktury a pracovního prostoru, jako jsou cíle nasazení, nastavení pro prostředky Databricks, jako jsou úlohy a kanály, a také zdrojové soubory a další artefakty.
  3. Projekt sady je ověřen. Ověření ověří nastavení a definice prostředků v konfiguraci sady s odpovídajícími schématy objektů, aby se zajistilo, že je sada nasaditelná do Databricks.
  4. Sada se nasadí do cílového pracovního prostoru. Nejčastěji se sada nasazuje nejprve do osobního vývojového pracovního prostoru uživatele pro účely testování. Jakmile je testování balíčku dokončeno, může být nasazen na staging, a poté na produkční cíle.
  5. Prostředky pracovního postupu definované v nasazené sadě je možné spustit. Můžete například spustit úlohu.
  6. Pokud se sada už nepoužívá, může být trvale zničena.

Pomocí příkazů sady rozhraní příkazového řádku Databricks vytvoříte, ověříte, nasadíte, spustíte a zničíte sady, jak je popsáno v následujících částech.

Krok 1: Vytvoření sady

Existují tři způsoby, jak začít vytvářet sadu:

  1. Použijte výchozí šablonu sady.
  2. Použijte vlastní šablonu sady.
  3. Vytvořte balíček ručně.

Použití výchozí šablony sady

Pokud chcete použít výchozí šablonu sady prostředků Azure Databricks k vytvoření počáteční sady, kterou pak můžete dále přizpůsobit, spusťte příkaz pomocí Rozhraní příkazového řádku Databricks verze 0.218.0 nebo novější bundle init , který vám umožní vybrat si ze seznamu dostupných šablon. Podívejte se na databricks bundle init.

databricks bundle init

Zdroj výchozích šablon sad můžete zobrazit ve veřejných úložištích Databricks/cli a databricks/mlops-stacks Na GitHubu.

Přeskočte k kroku 2: Naplňte konfigurační soubory sady.

Použijte vlastní šablonu svazku

Pokud chcete použít jinou šablonu sady než výchozí šablonu sady Azure Databricks, musíte znát místní cestu nebo adresu URL umístění vzdálené šablony sady. Ke spuštění příkazu použijte Databricks CLI verze 0.218.0 nebo novější:

databricks bundle init <project-template-local-path-or-url>

Další informace o tomto příkazu naleznete v tématu Deklarativní automatizační sady šablon projektů. Informace o konkrétní šabloně sady najdete v dokumentaci poskytovatele šablony sady.

Přeskočte k kroku 2: Naplňte konfigurační soubory sady.

Ruční vytvoření sady

Pokud chcete sadu vytvořit ručně místo pomocí šablony sady, vytvořte adresář projektu na místním počítači nebo prázdné úložiště s poskytovatelem Gitu třetí strany.

V adresáři nebo úložišti vytvořte jako vstup jeden nebo více konfiguračních souborů sady. Tyto soubory jsou vyjádřeny ve formátu YAML. Musí existovat minimálně jeden (a pouze jeden) konfigurační soubor sady s názvem databricks.yml. Další přídavné konfigurační soubory balíčku musí být uvedeny v mapování souboru include.

K snadnějšímu a rychlému vytváření souborů YAML, které odpovídají syntaxi konfigurace sady, můžete použít nástroj, jako je Visual Studio Code, PyCharm Professional nebo IntelliJ IDEA Ultimate , který poskytuje podporu pro soubory YAML a soubory schématu JSON následujícím způsobem:

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 soubor schématu JSON konfigurace sady dat pomocí Rozhraní příkazového řádku Databricks verze 0.218.0 nebo vyšší, abyste mohli spustit bundle schemapříkaz a přesměrovat výstup do souboru JSON. Například vygenerujte soubor s názvem bundle_config_schema.json v aktuálním adresáři následujícím způsobem:

    databricks bundle schema > bundle_config_schema.json
    
  3. Pomocí editoru Visual Studio Code vytvořte nebo otevřete konfigurační soubor sady v aktuálním adresáři. Tento soubor musí mít název databricks.yml.

  4. Na začátek konfiguračního souboru sady přidejte následující komentář:

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

    Poznámka:

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

  5. Použijte funkce jazykového serveru YAML, které jste přidali dříve. Další informace najdete v dokumentaci k jazykovému serveru YAML.

PyCharm Professional

  1. Vygenerujte soubor schématu JSON konfigurace sady pomocí Rozhraní příkazového řádku Databricks verze 0.218.0 nebo vyšší, abyste mohli spustit bundle schemapříkaz a přesměrovat výstup do souboru JSON. Například vygenerujte soubor s názvem 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. Pomocí PyCharm vytvořte nebo otevřete konfigurační soubor sady. Tento soubor musí mít název databricks.yml. Při psaní PyCharm kontroluje syntaxi a formátování schématu JSON a poskytuje rady pro dokončování kódu.

IntelliJ IDEA Ultimate

  1. Vygenerujte soubor schématu JSON konfigurace sady pomocí Rozhraní příkazového řádku Databricks verze 0.218.0 nebo vyšší, abyste mohli spustit bundle schemapříkaz a přesměrovat výstup do souboru JSON. Například vygenerujte soubor s názvem 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. K vytvoření nebo otevření konfiguračního souboru sady použijte IntelliJ IDEA. Tento soubor musí mít název databricks.yml. Při psaní IntelliJ IDEA kontroluje syntaxi a formátování schématu JSON a poskytuje rady pro dokončování kódu.

Krok 2: Naplnění konfiguračních souborů sady

Konfigurační soubory balíčků definují pracovní postupy Azure Databricks specifikováním nastavení, jako jsou podrobnosti pracovního prostoru, názvy artefaktů, umístění souborů, podrobnosti o úlohách a kanálech. Konfigurace sady prostředků obvykle obsahuje také cíle vývojového, přípravného a produkčního nasazení. Kompletní referenční informace o konfiguraci sady najdete v tématu Referenční informace o konfiguraci.

Pomocí příkazu bundle generate můžete automaticky vygenerovat konfiguraci balíčku pro existující prostředek v pracovním prostoru, a pak pomocí bundle deployment bind propojit konfiguraci balíčku s prostředkem v pracovním prostoru, čímž zajistíte jejich synchronizaci. Viz databricks bundle generate a databricks bundle deployment bind.

Krok 3: Ověření konfiguračních souborů sady

Před nasazením artefaktů nebo spuštěním úlohy nebo kanálu byste měli ověřit, jestli jsou definice v konfiguračních souborech sady platné. Uděláte to tak, že příkaz spustíte bundle validate z kořenového adresáře projektu sady. Podívejte se na databricks bundle validate.

databricks bundle validate

Pokud je ověření úspěšné, vrátí se souhrn identity sady a potvrzovací zpráva. K výstupu schématu použijte příkaz databricks bundle schema. Viz schéma balíčku Databricks.

Krok 4: Nasazení sady

Před nasazením sady se ujistěte, že má vzdálený pracovní prostor povolené soubory pracovního prostoru. Podívejte se na co jsou soubory pracovního prostoru.

Pokud chcete nasadit bundle do vzdáleného pracovního prostoru, spusťte příkaz bundle deploy z kořenového adresáře bundle, jak je popsáno v databricks bundle deploy. Rozhraní CLI Databricks se přesouvá do cílového pracovního prostoru uvedeného v konfiguračních souborech balíčku. Podívejte se na cíle.

databricks bundle deploy

Jedinečná identita sady je definována jeho názvem, cílem a identitou nasazovacího nástroje. Pokud jsou tyto atributy v různých sadách stejné, nasazení těchto sad bude vzájemně kolidovat. Podrobnosti najdete v databricks bundle deploy.

Návod

Můžete spustit databricks bundle příkazy mimo kořen sady nastavením proměnné prostředí BUNDLE_ROOT. Pokud tato proměnná prostředí není nastavená, příkazy databricks bundle se pokusí o nalezení kořene sady hledáním v aktuálním pracovním adresáři.

Krok 5: Spuštění sady

Pokud chcete spustit konkrétní úlohu nebo pipeline, spusťte příkaz bundle run z kořenového adresáře sady a zadejte klíč úlohy nebo pipeline deklarovaný v konfiguračních souborech sady, jak je popsáno ve databricks bundle run. Klíč prostředku je prvek nejvyšší úrovně bloku YAML prostředku. Pokud nezadáte úlohu nebo klíč pipeline, zobrazí se výzva k výběru prostředku, který se má spustit ze seznamu dostupných prostředků. Pokud není zadána -t možnost, použije se výchozí cíl deklarovaný v konfiguračních souborech sady. Pokud chcete například spustit úlohu s klíčem hello_job v kontextu výchozího cíle:

databricks bundle run hello_job

Spuštění úlohy s klíčem hello_job v kontextu cíle deklarovaného názvem dev:

databricks bundle run -t dev hello_job

Krok 6: Zničení sady

Varování

Zničení sady trvale vymaže dříve nasazené úlohy, pipeline a artefakty v rámci sady. Tuto akci nelze vrátit zpět.

Pokud jste dokončili svůj balíček a chcete odstranit úlohy, kanály a artefakty, které byly dříve nasazeny, spusťte příkaz bundle destroy z kořenového adresáře balíčku. Tento příkaz odstraní všechny dříve nasazené úlohy, kanály a artefakty definované v konfiguračních souborech sady. Podívejte se na databricks bundle destroy.

databricks bundle destroy

Ve výchozím nastavení budete vyzváni k potvrzení trvalého odstranění dříve nasazených úloh, pipeline a artefaktů. Pokud chcete tyto výzvy přeskočit a provést automatické trvalé odstranění, přidejte --auto-approve do bundle destroy příkazu možnost.