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
- Databricks CLI verze 0.218.0 nebo vyšší. 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. - Vzdálený pracovní prostor musí mít povolené soubory pracovního prostoru. Podívejte se, co jsou soubory pracovního prostoru?
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í.
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říkladhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
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 profiles
pomocí rozhraní příkazového řádku Databricks . Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkazdatabricks auth env --profile <profile-name>
.Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.
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.
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.
Ke spuštění
bundle init
příkazu použijte verzi rozhraní příkazového řádku Databricks:databricks bundle init
Pro
Template to use
, ponechte výchozí hodnotudefault-python
stisknutím klávesyEnter
.Pro
Unique name for this project
, ponechte výchozí hodnotumy_project
, nebo zadejte jinou hodnotu a stiskněteEnter
. 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.Pro
Include a stub (sample) notebook
, vyberteno
a stiskněteEnter
. To dává rozhraní příkazového řádku Databricks pokyn, aby do sady nepřidávejte ukázkový poznámkový blok.Pro
Include a stub (sample) DLT pipeline
, vyberteno
a stiskněteEnter
. To dává rozhraní příkazového řádku Databricks pokyn, aby ve vaší sadě nedefinoval ukázkový kanál dynamických tabulek Delta.Pro
Include a stub (sample) Python package
, ponechte výchozí hodnotuyes
stisknutím klávesyEnter
. 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
nebopoetry --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
nebopython --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
nebodatabricks --version
. Viz Instalace nebo aktualizace rozhraní příkazového řádku Databricks.
Proveďte následující změny v sadě projektů:
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
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ů:
- Do
Package name
pole zadejte název podřízené složky/src
a stiskněte klávesuEnter
. Mělo by to být také hodnota balíčkuname
definovaná v souboru sadysetup.py
. - Pro
Version
, zadejte0.0.1
a stiskněteEnter
. Odpovídá číslu verze definovanému v souboru sadysrc/<project-name>/__init__.py
. - Zadejte
Description
textwheel file based on <project-name>/src
(nahraďte<project-name>
názvem projektu) a stiskněteEnter
. Odpovídá hodnotědescription
definované v souboru šablonysetup.py
. - Stiskněte
Author
klávesuEnter
. Tato výchozí hodnota odpovídá autorovi definovanému v souboru šablonysetup.py
. - Stiskněte
License
klávesuEnter
. V šabloně není definovaná žádná licence. - Zadejte
Compatible Python versions
verzi Pythonu, která odpovídá verzi v cílovém clusteru Azure Databricks (například^3.10
) a stiskněteEnter
. - Zadejte
Would you like to define your main dependencies interactively?
a stiskněteEnter
.no
Závislosti definujete později. - Zadejte
Would you like to define your development dependencies interactively?
a stiskněteEnter
.no
Závislosti definujete později. - Stiskněte
Do you confirm generation?
klávesuEnter
.
- Do
Po dokončení výzev přidá do projektu sady soubor.
pyproject.toml
Informace opyproject.toml
souboru naleznete v souboru pyproject.toml.Z kořenového adresáře sady dejte pokyn
poetry
ke čtenípyproject.toml
souboru, vyřešte závislosti a nainstalujte je, vytvořtepoetry.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
Na konec
pyproject.toml
souboru přidejte následující oddíl a nahraďte<project-name>
ho názvem adresáře, který soubor obsahujesrc/<project-name>/main.py
(napříkladmy_project
):[tool.poetry.scripts] main = "<project-name>.main:main"
Oddíl určuje vstupní bod kola Pythonu pro úlohu kola Pythonu.
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í.
setup.py
Odstraňte soubory zerequirements-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á.
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
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.
Pokud použijete
setuptools
, nainstalujte balíčkywheel
setuptools
, pokud jste to ještě neudělali, spuštěním následujícího příkazu:pip3 install --upgrade wheel setuptools
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
Pokud chcete zkontrolovat, jestli se nasadil místně vytvořený soubor kola Pythonu:
- Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní prostor.
- 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.
Pokud chcete zkontrolovat, jestli se úloha vytvořila:
- Na bočním panelu pracovního prostoru Azure Databricks klikněte na Pracovní postupy.
- Na kartě Úlohy klikněte na [dev
<your-username>
]<project-name>
_job. - 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.
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
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.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:
- Jak vytvářet, sestavovat a pracovat se soubory kol Pythonu s básní nebo
setuptools
. Pro básně viz Základní použití. Vizsetuptools
uživatelská příručka k balení Pythonu. - Jak používat soubory kol Pythonu jako součást úlohy Azure Databricks Viz Použití souboru kola Pythonu v úloze Azure Databricks.
Podle těchto pokynů vytvořte ukázkovou sadu, která sestaví soubor kola Pythonu s básní nebo setuptools
nasadí 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í.
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říkladhttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
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 profiles
pomocí rozhraní příkazového řádku Databricks . Pokud chcete zobrazit existující nastavení konkrétního profilu, spusťte příkazdatabricks auth env --profile <profile-name>
.Ve webovém prohlížeči dokončete pokyny na obrazovce, abyste se přihlásili k pracovnímu prostoru Azure Databricks.
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.
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
__init__.py
Nechte soubor prázdný.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()
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
Do souboru nebo
setup.py
souboru přidejte následující kódpyproject.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.
- Nahraďte
Krok 3: Vytvoření konfiguračního souboru sady
Konfigurační soubor sady popisuje artefakty, které chcete nasadit, a pracovní postupy, které chcete spustit.
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é vlibraries
položkách polewhl
.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, abywhl
bylo možné určit, že se má sestavit soubor kola Pythonu. Prosetuptools
,whl
je výchozí, pokud nejsou zadány žádné definice artefaktů. - Mapování
path
označuje cestu kpyproject.toml
souboru pro básně nebo dosetup.py
souboru prosetuptools
. Tato cesta je relativní vzhledem kdatabricks.yml
souboru. Prosetuptools
tuto cestu je.
ve výchozím nastavení (stejný adresář jakodatabricks.yml
soubor). - Mapování
build
označuje všechny vlastní příkazy sestavení, které se mají spustit, aby se vytvořil soubor kola Pythonu. Prosetuptools
, tento příkaz jepython3 setup.py bdist wheel
ve výchozím nastavení. - Mapování
files
se skládá z jednoho nebo vícesource
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.
- Mapování
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
nebopoetry --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
nebopython --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
nebodatabricks --version
. Viz Instalace nebo aktualizace rozhraní příkazového řádku Databricks.
- Nainstalujte básně verze 1.6 nebo vyšší, pokud ještě není nainstalovaná. Pokud chcete zkontrolovat nainstalovanou verzi Básní, spusťte příkaz
Pokud používáte
setuptools
, nainstalujte balíčkywheel
setuptools
, pokud ještě nejsou nainstalované, spuštěním následujícího příkazu:pip3 install --upgrade wheel setuptools
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á.
V kořenovém adresáři ověřte konfigurační soubor sady:
databricks bundle validate
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
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
Ve výstupu zkopírujte
Run URL
a vložte ho do adresního řádku webového prohlížeče.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 setuptools
a 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.