Sdílet prostřednictvím


Vývoj souboru kola Pythonu pomocí sad prostředků Databricks

Tento článek popisuje, jak sestavit, nasadit a spustit soubor kola Pythonu jako součást projektu Sady prostředků Databricks. Podívejte se , co jsou sady prostředků Databricks?

Požadavky

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

Rozhodněte se, jestli chcete vytvořit počáteční sadu pomocí šablony nebo ji vytvořit ručně. Vytvoření sady pomocí šablony je rychlejší a jednodušší, ale sada může vytvořit obsah, který není potřeba, a výchozí nastavení sady se musí dále přizpůsobit pro skutečné aplikace. Ruční vytvoření sady vám poskytne úplnou kontrolu nad nastavením sady, ale musíte být obeznámeni s tím, jak fungují sady, protože provádíte veškerou práci od začátku. Zvolte jednu z následujících sad kroků:

Vytvoření sady pomocí šablony

V těchtokrocích Tento postup vás provede vytvořením sady, která se skládá ze souborů pro sestavení do souboru kola Pythonu a definice úlohy Azure Databricks pro sestavení tohoto souboru kola Pythonu. Potom ověříte, nasadíte a sestavíte nasazené soubory do souboru kola Pythonu z úlohy kola Pythonu v pracovním prostoru Azure Databricks.

Výchozí šablona sady prostředků Azure Databricks pro Python používá nástroje setuptools k sestavení souboru kola Pythonu. Pokud místo toho chcete použít básně k sestavení souboru kola Pythonu, postupujte podle pokynů dále v této části a prohoďte setuptools implementaci pro implementaci básně.

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í pracovních postupů, 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í bundle init příkazu použijte verzi rozhraní příkazového řádku Databricks:

    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 no a stiskněte Enter. To dává rozhraní příkazového řádku Databricks pokyn, aby do sady nepřidávejte ukázkový poznámkový blok.

  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, ponechte výchozí hodnotu yes stisknutím klávesy Enter. To dává rozhraní příkazového řádku Databricks pokyn, aby do sady přidal ukázkové soubory balíčků kol Pythonu a 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 kolečka Pythonu a určuje nastavení cílového pracovního prostoru.
  • resources/<project-name>_job.yml: Tento soubor určuje nastavení úlohy kolečka Pythonu.
  • src/<project-name>: Tento adresář obsahuje soubory, které úloha kolečka Pythonu používá k sestavení souboru kola Pythonu.

Poznámka:

Pokud chcete nainstalovat soubor kola Pythonu do cílového clusteru s nainstalovaným Modulem Databricks Runtime 12.2 LTS nebo nižším, musíte do databricks.yml souboru přidat následující mapování nejvyšší úrovně:

# Applies to all tasks of type python_wheel_task.
experimental:
  python_wheel_wrapper: true

Toto mapování dává rozhraní příkazového řádku Databricks pokyn, aby udělalo toto:

  • Nasaďte kopii souboru kola Pythonu na pozadí. Tato cesta nasazení je obvykle ${workspace.artifact_path}/.internal/<random-id>/<wheel-filename>.whl.
  • Vytvořte poznámkový blok na pozadí, který obsahuje pokyny k instalaci předchozího nasazeného souboru kola Pythonu do cílového clusteru. Cesta k tomuto poznámkovému bloku je obvykle ${workspace.file_path}/.databricks/bundle/<target-name>/.internal/notebook_<job-name>_<task-key>.
  • Když spustíte úlohu, která obsahuje úlohu kolečka Pythonu a že úkoly odkazují na předchozí soubor kola Pythonu, vytvoří se úloha na pozadí, na kterém běží předchozí poznámkový blok.

Toto mapování cílových clusterů s nainstalovaným modulem Databricks Runtime 13.1 nebo novějším nemusíte zadávat, protože instalace kol Pythonu ze systému souborů pracovního prostoru Azure Databricks se na tyto cílové clustery nainstalují automaticky.

Krok 4: Aktualizace balíčku projektu tak, aby používala básně

Ve výchozím nastavení šablona sady určuje sestavení souboru kolečka Pythonu pomocí setuptools souborů setup.py a requirements-dev.txt. Pokud chcete zachovat tyto výchozí hodnoty, přeskočte k kroku 5: Ověřte konfigurační soubor sady projektu.

Pokud chcete balíček projektu aktualizovat tak, aby místo toho používal básněsetuptools, ujistěte se, že místní vývojový počítač splňuje následující požadavky:

  • Básně verze 1.6 nebo vyšší. Pokud chcete zkontrolovat nainstalovanou verzi Básní, spusťte příkaz poetry -V nebo poetry --version. Pokud chcete nainstalovat nebo upgradovat básně, přečtěte si téma Instalace.
  • Python verze 3.10 nebo vyšší Pokud chcete zkontrolovat svou verzi Pythonu, spusťte příkaz python -V nebo python --version.
  • Databricks CLI verze 0.209.0 nebo novější Ke své verzi Rozhraní příkazového řádku Databricks spusťte příkaz databricks -v nebo databricks --version. Viz Instalace nebo aktualizace rozhraní příkazového řádku Databricks.

Proveďte následující změny v sadě projektů:

  1. Z kořenového adresáře sady inicializujte poetry sestavení kol Pythonu pro básně spuštěním následujícího příkazu:

    poetry init
    
  2. Básně zobrazuje několik výzev k dokončení. U sestavení kol Pythonu odpovězte na tyto výzvy následujícím způsobem, aby odpovídaly souvisejícímu výchozímu nastavení v sadě projektů:

    1. Do Package namepole zadejte název podřízené složky /srca stiskněte klávesu Enter. Mělo by to být také hodnota balíčku name definovaná v souboru sady setup.py .
    2. Pro Version, zadejte 0.0.1 a stiskněte Enter. Odpovídá číslu verze definovanému v souboru sady src/<project-name>/__init__.py .
    3. Zadejte Descriptiontext wheel file based on <project-name>/src (nahraďte <project-name> názvem projektu) a stiskněte Enter. Odpovídá hodnotě description definované v souboru šablony setup.py .
    4. Stiskněte Authorklávesu Enter. Tato výchozí hodnota odpovídá autorovi definovanému v souboru šablony setup.py .
    5. Stiskněte Licenseklávesu Enter. V šabloně není definovaná žádná licence.
    6. Zadejte Compatible Python versionsverzi Pythonu, která odpovídá verzi v cílovém clusteru Azure Databricks (například ^3.10) a stiskněte Enter.
    7. Zadejte Would you like to define your main dependencies interactively? a stiskněte Enter.no Závislosti definujete později.
    8. Zadejte Would you like to define your development dependencies interactively? a stiskněte Enter.no Závislosti definujete později.
    9. Stiskněte Do you confirm generation? klávesu Enter.
  3. Po dokončení výzev přidá do projektu sady soubor.pyproject.toml Informace o pyproject.toml souboru naleznete v souboru pyproject.toml.

  4. Z kořenového adresáře sady dejte pokyn poetry ke čtení pyproject.toml souboru, vyřešte závislosti a nainstalujte je, vytvořte poetry.lock soubor pro uzamčení závislostí a nakonec vytvořte virtuální prostředí. Provedete to spuštěním následujícího příkazu:

    poetry install
    
  5. Na konec pyproject.toml souboru přidejte následující oddíl a nahraďte <project-name> ho názvem adresáře, který soubor obsahuje src/<project-name>/main.py (například my_project):

    [tool.poetry.scripts]
    main = "<project-name>.main:main"
    

    Oddíl určuje vstupní bod kola Pythonu pro úlohu kola Pythonu.

  6. Na nejvyšší úrovni souboru sady databricks.yml přidejte následující mapování:

    artifacts:
      default:
        type: whl
        build: poetry build
        path: .
    

    Toto mapování dává rozhraní příkazového řádku Databricks pokyn k vytvoření souboru kola Pythonu pomocí básní.

  7. setup.py Odstraňte soubory ze requirements-dev.txt svazku, protože básně je nepotřebuje.

Krok 5: Ověření konfiguračního souboru sady projektu

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 6: Sestavení souboru kola Pythonu a nasazení místního projektu do vzdáleného pracovního prostoru

V tomto kroku sestavíte soubor kola Pythonu, nasadíte vytvořený soubor kola Pythonu do vzdáleného pracovního prostoru Azure Databricks a vytvoříte úlohu Azure Databricks ve vašem pracovním prostoru.

  1. Pokud použijete setuptools, nainstalujte balíčky wheel setuptools , pokud jste to ještě neudělali, spuštěním následujícího příkazu:

    pip3 install --upgrade wheel setuptools
    
  2. V terminálu editoru Visual Studio Code spusťte bundle deploy příkaz pomocí rozhraní příkazového řádku Databricks následujícím způsobem:

    databricks bundle deploy -t dev
    
  3. Pokud chcete zkontrolovat, jestli se nasadil místně vytvořený soubor kola Pythonu:

    1. Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní prostor.
    2. Klikněte do následující složky: Uživatelé> ><your-username>pracovního prostoru > .bundle ><project-name>> dev > artifacts > .internal .><random-guid>

    Soubor kola Pythonu by měl být v této složce.

  4. Pokud chcete zkontrolovat, jestli se úloha vytvořila:

    1. Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní postupy.
    2. Na kartě Úlohy klikněte na [dev<your-username>] <project-name>_job.
    3. Klikněte na kartu Úkoly .

    Měl by existovat jeden úkol: main_task.

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

Krok 7: 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í úkolu v pracovním prostoru Azure Databricks se zobrazí zelený záhlaví, kliknutím na main_task úlohu zobrazíte výsledky.

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

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

Ruční vytvoření sady

V těchtokrocích Tyto kroky vás provedou vytvořením sady, která se skládá ze souborů pro sestavení do souboru kola Pythonu a definice úlohy Databricks pro sestavení tohoto souboru kola Pythonu. Pak ověříte, nasadíte a sestavíte nasazené soubory do souboru kola Pythonu z úlohy kola Pythonu v pracovním prostoru Databricks.

Mezi tyto kroky patří přidání obsahu do souboru YAML. Volitelně můžete chtít použít integrované vývojové prostředí (IDE), které poskytuje automatické návrhy schématu a akce při práci se soubory YAML. Následující kroky používají Visual Studio Code s rozšířením YAML nainstalovaným z Webu Visual Studio Code Marketplace.

Tento postup předpokládá, že už víte:

Podle těchto pokynů vytvořte ukázkovou sadu, která sestaví soubor kola Pythonu s básní nebo setuptoolsnasadí soubor kola Pythonu a pak spustí nasazený soubor kola Pythonu.

Pokud jste už vytvořili soubor kola Pythonu a chcete ho nasadit a spustit, přeskočte dopředu a zadejte nastavení kolečka Pythonu v konfiguračním souboru sady v kroku 3: Vytvoření konfiguračního souboru sady.

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í pracovních postupů, které chcete spustit.

  1. V kořenovém adresáři vaší sady vytvořte následující složky a soubory v závislosti na tom, jestli používáte básně nebo setuptools vytváříte soubory kol Pythonu:

    Poezie

    ├── src
    │     └── my_package
    │           ├── __init__.py
    │           ├── main.py
    │           └── my_module.py
    └── pyproject.toml
    

    Nástroje pro nastavení

    ├── src
    │     └── my_package
    │           ├── __init__.py
    │           ├── main.py
    │           └── my_module.py
    └── setup.py
    
  2. __init__.py Nechte soubor prázdný.

  3. Do souboru přidejte následující kód main.py a pak soubor uložte:

    from my_package.my_module import *
    
    def main():
    
      first = 200
      second = 400
    
      print(f"{first} + {second} = {add_two_numbers(first, second)}")
      print(f"{second} - {first} = {subtract_two_numbers(second, first)}")
      print(f"{first} * {second} = {multiply_two_numbers(first, second)}")
      print(f"{second} / {first} = {divide_two_numbers(second, first)}")
    
    if __name__ == "__main__":
      main()
    
  4. Do souboru přidejte následující kód my_module.py a pak soubor uložte:

    def add_two_numbers(a, b):
      return a + b
    
    def subtract_two_numbers(a, b):
      return a - b
    
    def multiply_two_numbers(a, b):
      return a * b
    
    def divide_two_numbers(a, b):
      return a / b
    
  5. Do souboru nebo setup.py souboru přidejte následující kód pyproject.toml a pak ho uložte:

    Pyproject.toml

    [tool.poetry]
    name = "my_package"
    version = "0.0.1"
    description = "<my-package-description>"
    authors = ["my-author-name <my-author-name>@<my-organization>"]
    
    [tool.poetry.dependencies]
    python = "^3.10"
    
    [build-system]
    requires = ["poetry-core"]
    build-backend = "poetry.core.masonry.api"
    
    [tool.poetry.scripts]
    main = "my_package.main:main"
    
    • Nahraďte my-author-name primárním jménem kontaktu vaší organizace.
    • Nahraďte my-author-name>@<my-organization primární e-mailovou adresou vaší organizace.
    • Nahraďte <my-package-description> popisem zobrazení souboru kola Pythonu.

    Setup.py

    from setuptools import setup, find_packages
    
    import src
    
    setup(
      name = "my_package",
      version = "0.0.1",
      author = "<my-author-name>",
      url = "https://<my-url>",
      author_email = "<my-author-name>@<my-organization>",
      description = "<my-package-description>",
      packages=find_packages(where='./src'),
      package_dir={'': 'src'},
      entry_points={
        "packages": [
          "main=my_package.main:main"
        ]
      },
      install_requires=[
        "setuptools"
      ]
    )
    
    • Nahraďte https://<my-url> adresou URL vaší organizace.
    • Nahraďte <my-author-name> primárním jménem kontaktu vaší organizace.
    • Nahraďte <my-author-name>@<my-organization> primární e-mailovou adresou vaší organizace.
    • Nahraďte <my-package-description> popisem zobrazení souboru kola Pythonu.

Krok 3: Vytvoření konfiguračního souboru sady

Konfigurační soubor sady popisuje artefakty, které chcete nasadit, a pracovní postupy, které chcete spustit.

  1. V kořenovém adresáři vaší sady přidejte konfigurační soubor sady s názvem databricks.yml. Do tohoto souboru přidejte následující kód:

    Poezie

    Poznámka:

    Pokud jste už vytvořili soubor kola Pythonu a chcete ho nasadit, upravte následující konfigurační soubor sady tak, že mapování vynecháte artifacts . Rozhraní příkazového řádku Databricks pak předpokládá, že soubor kola Pythonu je již sestavený a automaticky nasadí soubory zadané v libraries položkách pole whl .

    bundle:
      name: my-wheel-bundle
    
    artifacts:
      default:
        type: whl
        build: poetry build
        path: .
    
    resources:
      jobs:
        wheel-job:
          name: wheel-job
          tasks:
            - task_key: wheel-task
              new_cluster:
                spark_version: 13.3.x-scala2.12
                node_type_id: Standard_DS3_v2
                data_security_mode: USER_ISOLATION
                num_workers: 1
              python_wheel_task:
                entry_point: main
                package_name: my_package
              libraries:
                - whl: ./dist/*.whl
    
    targets:
      dev:
        workspace:
        host: <workspace-url>
    

    Nástroje pro nastavení

    bundle:
      name: my-wheel-bundle
    
    resources:
      jobs:
        wheel-job:
          name: wheel-job
          tasks:
            - task_key: wheel-task
              new_cluster:
                spark_version: 13.3.x-scala2.12
                node_type_id: Standard_DS3_v2
                data_security_mode: USER_ISOLATION
                num_workers: 1
              python_wheel_task:
                entry_point: main
                package_name: my_package
              libraries:
                - whl: ./dist/*.whl
    
    targets:
      dev:
        workspace:
        host: <workspace-url>
    

    Nahraďte adresou URL pro jednotlivé pracovní prostory, například https://adb-1234567890123456.7.azuredatabricks.net.<workspace-url>

    Mapování artifacts se vyžaduje k sestavení souborů kol Pythonu s básní a je volitelné k sestavení souborů kol Pythonu pomocí setuptools. Mapování artifacts obsahuje jednu nebo více definic artefaktů s následujícími mapováními:

    • Mapování type musí být k dispozici a nastaveno tak, aby whl bylo možné určit, že se má sestavit soubor kola Pythonu. Pro setuptools, whl je výchozí, pokud nejsou zadány žádné definice artefaktů.
    • Mapování path označuje cestu k pyproject.toml souboru pro básně nebo do setup.py souboru pro setuptools. Tato cesta je relativní vzhledem k databricks.yml souboru. Pro setuptoolstuto cestu je . ve výchozím nastavení (stejný adresář jako databricks.yml soubor).
    • Mapování build označuje všechny vlastní příkazy sestavení, které se mají spustit, aby se vytvořil soubor kola Pythonu. Pro setuptools, tento příkaz je python3 setup.py bdist wheel ve výchozím nastavení.
    • Mapování files se skládá z jednoho nebo více source mapování, která určují všechny další soubory, které se mají zahrnout do sestavení kola Pythonu. Neexistuje výchozí nastavení.

    Poznámka:

    Pokud chcete nainstalovat soubor kola Pythonu do cílového clusteru s nainstalovaným Modulem Databricks Runtime 12.2 LTS nebo nižším, musíte do databricks.yml souboru přidat následující mapování nejvyšší úrovně:

    # Applies to jobs with python_wheel_task and that use
    # clusters with Databricks Runtime 13.0 or below installed.
    experimental:
      python_wheel_wrapper: true
    

    Toto mapování dává rozhraní příkazového řádku Databricks pokyn, aby udělalo toto:

    • Nasadí kopii souboru kola Pythonu na pozadí. Tato cesta nasazení je obvykle ${workspace.artifact_path}/.internal/<random-id>/<wheel-filename>.whl.
    • Vytvoří poznámkový blok na pozadí, který obsahuje pokyny k instalaci předchozího nasazeného souboru kola Pythonu do cílového clusteru. Cesta k tomuto poznámkovému bloku je obvykle ${workspace.file_path}/.databricks/bundle/<target-name>/.internal/notebook_<job-name>_<task-key>.
    • Když spustíte úlohu, která obsahuje úlohu kolečka Pythonu a tato úloha odkazuje na předchozí soubor kola Pythonu, vytvoří se úloha na pozadí, na kterém běží předchozí poznámkový blok.

    Toto mapování cílových clusterů s nainstalovaným modulem Databricks Runtime 13.1 nebo novějším nemusíte zadávat, protože instalace kol Pythonu ze systému souborů pracovního prostoru Azure Databricks se na tyto cílové clustery nainstalují automaticky.

  2. Pokud používáte básně, postupujte takto:

    • Nainstalujte básně verze 1.6 nebo vyšší, pokud ještě není nainstalovaná. Pokud chcete zkontrolovat nainstalovanou verzi Básní, spusťte příkaz poetry -V nebo poetry --version.
    • Ujistěte se, že máte nainstalovaný Python verze 3.10 nebo novější. Pokud chcete zkontrolovat svou verzi Pythonu, spusťte příkaz python -V nebo python --version.
    • Ujistěte se, že máte Rozhraní příkazového řádku Databricks verze 0.209.0 nebo novější. Ke své verzi Rozhraní příkazového řádku Databricks spusťte příkaz databricks -v nebo databricks --version. Viz Instalace nebo aktualizace rozhraní příkazového řádku Databricks.
  3. Pokud používáte setuptools, nainstalujte balíčky wheel setuptools , pokud ještě nejsou nainstalované, spuštěním následujícího příkazu:

    pip3 install --upgrade wheel setuptools
    
  4. Pokud máte v úmyslu uložit tuto sadu s poskytovatelem Gitu, přidejte .gitignore do kořenového adresáře projektu soubor a do tohoto souboru přidejte následující položky:

    Poezie

    .databricks
    dist
    

    Nástroje pro nastavení

    .databricks
    build
    dist
    src/my_package/my_package.egg-info
    

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

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

  1. V kořenovém adresáři ověřte konfigurační soubor sady:

    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: Sestavení souboru kola Pythonu a nasazení místního projektu do vzdáleného pracovního prostoru

Sestavte soubor kola Pythonu místně, nasaďte vytvořený soubor kola Pythonu do pracovního prostoru, nasaďte poznámkový blok do pracovního prostoru a vytvořte úlohu v pracovním prostoru:

databricks bundle deploy -t dev

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

  1. Spusťte nasazenou úlohu, která používá nasazený poznámkový blok k volání nasazeného souboru kola Pythonu:

    databricks bundle run -t dev wheel-job
    
  2. Ve výstupu zkopírujte Run URL a vložte ho do adresního řádku webového prohlížeče.

  3. Na stránce Výstup úlohy se zobrazí následující výsledky:

    200 + 400 = 600
    400 - 200 = 200
    200 * 400 = 80000
    400 / 200 = 2.0
    

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

Sestavení a instalace souboru kola Pythonu pro úlohu

Pokud chcete vytvořit soubor kola Pythonu s básní nebo setuptoolsa pak tento soubor kola Pythonu použít v úloze, musíte do databricks.yml souboru přidat jedno nebo dvě mapování.

Pokud používáte básně, musíte do databricks.yml souboru zahrnout následující artifacts mapování. Toto mapování spustí poetry build příkaz a použije pyproject.toml soubor, který je ve stejném adresáři jako databricks.yml soubor:

artifacts:
  default:
    type: whl
    build: poetry build
    path: .

Poznámka:

Mapování artifacts je volitelné pro setuptools. Ve výchozím nastavení spustí setuptools rozhraní příkazového řádku Databricks příkaz python3 setup.py bdist_wheel a použije setup.py soubor, který je ve stejném adresáři jako soubor databricks.yml . Rozhraní příkazového řádku Databricks předpokládá, že jste už spustili příkaz, například pip3 install --upgrade wheel setuptools k instalaci wheel balíčků a setuptools balíčků, pokud ještě nejsou nainstalované.

Mapování úlohy libraries také musí obsahovat whl hodnotu, která určuje cestu k vytvořenému souboru kola Pythonu vzhledem ke konfiguračnímu souboru, ve kterém je deklarována. Následující příklad ukazuje tento postup v úloze poznámkového bloku (tři tečky označují vynechaný obsah pro stručnost):

resources:
  jobs:
    my-notebook-job:
      name: my-notebook-job
      tasks:
        - task_key: my-notebook-job-notebook-task
          notebook_task:
            notebook_path: ./my_notebook.py
          libraries:
            - whl: ./dist/*.whl
          new_cluster:
            # ...

Sestavení a instalace souboru kola Pythonu pro kanál

Pokud chcete vytvořit soubor kola Pythonu s básní nebo setuptools na tento soubor kola Pythonu odkazovat v kanálu Delta Live Tables, musíte do databricks.yml souboru přidat mapování, pokud používáte Poety, a musíte do poznámkového bloku kanálu přidat %pip install příkaz, jak je znázorněno níže.

Pokud používáte básně, musíte do databricks.yml souboru zahrnout následující artifacts mapování. Toto mapování spustí poetry build příkaz a použije pyproject.toml soubor, který je ve stejném adresáři jako databricks.yml soubor:

artifacts:
  default:
    type: whl
    build: poetry build
    path: .

Poznámka:

Mapování artifacts je volitelné pro setuptools. Ve výchozím nastavení spustí setuptools rozhraní příkazového řádku Databricks příkaz python3 setup.py bdist_wheel a použije setup.py soubor, který je ve stejném adresáři jako soubor databricks.yml . Rozhraní příkazového řádku Databricks předpokládá, že jste už spustili příkaz, například pip3 install --upgrade wheel setuptools k instalaci wheel balíčků a setuptools balíčků, pokud ještě nejsou nainstalované.

Související poznámkový blok kanálu také musí obsahovat %pip install příkaz pro instalaci vytvořeného souboru kola Pythonu. Viz knihovny Pythonu.