Stack CLI (starší verze)
Důležité
Tato dokumentace byla vyřazena a nemusí být aktualizována.
Tyto informace platí pro starší verze Databricks CLI verze 0.18 a starší. Databricks doporučuje místo toho použít novější rozhraní příkazového řádku Databricks verze 0.205 nebo vyšší. Podívejte se na co je rozhraní příkazového řádku Databricks? Pokud chcete zjistit svou verzi rozhraní příkazového řádku Databricks, spusťte databricks -v
příkaz .
Pokud chcete migrovat z Rozhraní příkazového řádku Databricks verze 0.18 nebo novější na Databricks CLI verze 0.205 nebo novější, přečtěte si téma Migrace rozhraní příkazového řádku Databricks.
Rozhraní příkazového řádku Databricks ve verzích 0.205 a vyšších nepodporují stack CLI. Databricks doporučuje místo toho použít zprostředkovatele Databricks Terraform.
Poznámka:
Rozhraní příkazového řádku stacku vyžaduje Databricks CLI ve verzi 0.8.3 nebo vyšší.
Rozhraní příkazového řádku zásobníku Azure Databricks poskytuje způsob, jak spravovat zásobník zdrojů, jako jsou úlohy, poznámkové bloky a soubory DBFS. Poznámkové bloky a soubory DBFS můžete ukládat lokálně a vytvořit JSON šablonu pro konfiguraci, která definuje mapování z vašich místních souborů na cesty v pracovním prostoru Azure Databricks, a také konfigurace úloh, které zpracovávají tyto poznámkové bloky.
Použijte příkazový řádek stacku se šablonou konfigurace JSON stacku k nasazení a správě stacku.
Podpříkazy rozhraní příkazového řádku služby Databricks spustíte tak, že je připojíte k databricks stack
.
databricks stack --help
Usage: databricks stack [OPTIONS] COMMAND [ARGS]...
[Beta] Utility to deploy and download Databricks resource stacks.
Options:
-v, --version [VERSION]
--debug Debug Mode. Shows full stack trace on error.
--profile TEXT CLI connection profile to use. The default profile is
"DEFAULT".
-h, --help Show this message and exit.
Commands:
deploy Deploy a stack of resources given a JSON configuration of the stack
Usage: databricks stack deploy [OPTIONS] CONFIG_PATH
Options:
-o, --overwrite Include to overwrite existing workspace notebooks and DBFS
files [default: False]
download Download workspace notebooks of a stack to the local filesystem
given a JSON stack configuration template.
Usage: databricks stack download [OPTIONS] CONFIG_PATH
Options:
-o, --overwrite Include to overwrite existing workspace notebooks in the
local filesystem [default: False]
Nasadit zásobník do pracovního prostoru
Tento podpříkaz nasadí zásobník. Informace o nastavení zásobníku najdete v tématu nastavení zásobníku.
databricks stack deploy ./config.json
Šablona JSON konfigurace zásobníku dává příklad config.json
.
Stažení aktualizací ze stacku poznámkového bloku
Tento podpříkaz stáhne poznámkové bloky zásobníku.
databricks stack download ./config.json
Příklady
Nastavení zásobníku
Struktura souborů ukázkového zásobníku
tree
.
├── notebooks
| ├── common
| | └── notebook.scala
| └── config
| ├── environment.scala
| └── setup.sql
├── lib
| └── library.jar
└── config.json
Tento ukázkový zásobník obsahuje hlavní poznámkový blok notebooks/common/notebook.scala
společně s konfiguračními poznámkovými bloky ve notebooks/config
složce. Existuje závislost knihovny JAR zásobníku v lib/library.jar
.
config.json
je šablona JSON konfigurace zásobníku. To je to, co se předává do příkazového rozhraní pro zásobník pro nasazení tohoto zásobníku.
Šablona JSON konfigurace zásobníku
Šablona konfigurace zásobníku popisuje nastavení zásobníku.
cat config.json
{
"name": "example-stack",
"resources": [
{
"id": "example-workspace-notebook",
"service": "workspace",
"properties": {
"source_path": "notebooks/common/notebook.scala",
"path": "/Users/example@example.com/dev/notebook",
"object_type": "NOTEBOOK"
}
},
{
"id": "example-workspace-config-dir",
"service": "workspace",
"properties": {
"source_path": "notebooks/config",
"path": "/Users/example@example.com/dev/config",
"object_type": "DIRECTORY"
}
},
{
"id": "example-dbfs-library",
"service": "dbfs",
"properties": {
"source_path": "lib/library.jar",
"path": "dbfs:/tmp/lib/library.jar",
"is_dir": false
}
},
{
"id": "example-job",
"service": "jobs",
"properties": {
"name": "Example Stack CLI Job",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_DS3_v2",
"num_workers": 3
},
"timeout_seconds": 7200,
"max_retries": 1,
"notebook_task": {
"notebook_path": "/Users/example@example.com/dev/notebook"
},
"libraries": [
{
"jar": "dbfs:/tmp/lib/library.jar"
}
]
}
}
]
}
Každá úloha, poznámkový blok pracovního prostoru, adresář pracovního prostoru, soubor DBFS nebo adresář DBFS je definována jako ResourceConfig. Každý ResourceConfig
, který představuje pracovní prostor nebo prostředek DBFS, obsahuje mapování ze souboru nebo adresáře, kde existuje místně (source_path
) na místo, kde existuje v pracovním prostoru nebo DBFS (path
).
Schéma šablony konfigurace zásobníku popisuje schéma šablony konfigurace zásobníku.
Nasazení stacku
Pomocí databricks stack deploy <configuration-file>
příkazu nasadíte zásobník.
databricks stack deploy ./config.json
Během nasazování zásobníku se prvky úložiště DBFS a pracovního prostoru nahrají do pracovního prostoru Azure Databricks a vytvoří se úlohy.
V době nasazení zásobníku je soubor JSON s názvem StackStatus pro nasazení uložen do stejného adresáře jako šablona konfigurace zásobníku. Název je upraven přidáním deployed
bezprostředně před příponou .json
: (například ./config.deployed.json
). Tento soubor používá rozhraní příkazového řádku Stack ke sledování minulých nasazených prostředků ve vašem pracovním prostoru.
Schéma stavu zásobníku popisuje konfiguraci zásobníku.
Důležité
Nepokoušejte se stavový soubor zásobníku upravovat ani přesunovat. Pokud se zobrazí nějaké chyby týkající se stavového souboru zásobníku, smažte jej a zkuste nasazení znovu.
./config.deployed.json
{
"cli_version": "0.8.3",
"deployed_output": [
{
"id": "example-workspace-notebook",
"databricks_id": {
"path": "/Users/example@example.com/dev/notebook"
},
"service": "workspace"
},
{
"id": "example-workspace-config-dir",
"databricks_id": {
"path": "/Users/example@example.com/dev/config"
},
"service": "workspace"
},
{
"id": "example-dbfs-library",
"databricks_id": {
"path": "dbfs:/tmp/lib/library.jar"
},
"service": "dbfs"
},
{
"id": "example-job",
"databricks_id": {
"job_id": 123456
},
"service": "jobs"
}
],
"name": "example-stack"
}
Datové struktury
V této části:
schéma šablony konfigurace stacku
StackConfig
Toto jsou vnější pole šablony konfigurace zásobníku. Všechna pole jsou povinná.
Název pole | Typ | Popis |
---|---|---|
jméno | STRING |
Název zásobníku. |
prostředky | Seznam ResourceConfig | Prostředek v Azure Databricks. Prostředky souvisejí se třemi službami (obory názvů REST API): pracovní prostor, úlohy a DBFS. |
Konfigurace zdrojů
Pole pro každou ResourceConfig
. Všechna pole jsou povinná.
Název pole | Typ | Popis |
---|---|---|
ID | STRING |
Jedinečný identifikátor prostředku. Vynucuje se jedinečnost resourceConfig. |
služba | ResourceService | Služba REST API, na které prostředek pracuje. Jedna z těchto možností: jobs ,workspace nebo dbfs . |
vlastnosti | ResourceProperties | Pole v této oblasti se liší v závislosti na službě ResourceConfig . |
ResourceProperties
Vlastnosti prostředku podle ResourceService. Pole se klasifikují jako použitá nebo se nepoužívají v rozhraní AZURE Databricks REST API. Všechna uvedená pole jsou povinná.
služba | Pole z rozhraní REST API použitého ve Stack CLI | Polí použitá pouze v rozhraní příkazového řádku Stack CLI |
---|---|---|
pracovní prostor | path: STRING – Cesty ke vzdálenému pracovnímu prostoru pro poznámkové bloky nebo adresáře. (Např. /Users/example@example.com/notebook )object_type: Workspace API - typ objektu Notebook. Může být pouze NOTEBOOK nebo DIRECTORY . |
source_path: STRING – cesta k místnímu zdroji poznámkových bloků nebo adresářů pracovního prostoru. Relativní cesta k souboru šablony konfigurace zásobníku nebo absolutní cesta ve vašem systému souborů. |
pracovní místa | Jakékoli pole v nastavení nebo struktuře new_settings. Jediné pole, které není povinné ve struktuře nastavení nebo new_settings, ale je požadováno pro rozhraní příkazového řádku zásobníku, je: name: STRING – název úlohy, kterou chcete nasadit. Aby se předešlo vytváření nadměrného počtu duplicitních úloh, Stack CLI vynucuje unikátní názvy pro úlohy nasazené v zásobníku. |
Žádné. |
dbfs | path: STRING – Porovnávání vzdálené cesty DBFS. Musí začínat na dbfs:/ . (např. dbfs:/this/is/a/sample/path )is_dir: BOOL – určuje, jestli je cesta DBFS adresář nebo soubor. |
source_path: STRING – Cesta k místnímu zdroji souborů nebo adresářů DBFS. Relativní cesta k souboru šablony konfigurace zásobníku nebo absolutní cesta v systému souborů. |
ResourceService
Každý prostředek patří do konkrétní služby, která je v souladu s rozhraním Databricks REST API. Jedná se o služby podporované rozhraním příkazového řádku Stack CLI.
Služba | Popis |
---|---|
pracovní prostor | Poznámkový blok nebo adresář pracovního prostoru. |
pracovní místa | Úloha Azure Databricks |
dbfs | Soubor nebo adresář DBFS. |
schéma stavu zásobníku
StackStatus
Po nasazení zásobníku pomocí rozhraní příkazového řádku se vytvoří soubor stavu zásobníku. Pole nejvyšší úrovně jsou:
Název pole | Typ | Popis |
---|---|---|
jméno | STRING |
Název zásobníku. Toto pole je stejné jako v StackConfigu. |
cli_version | STRING |
Verze rozhraní příkazového řádku Databricks použitá k nasazení technologického balíčku. |
nasazené zdroje | Seznam „ResourceStatus“ | Stav každého nasazeného prostředku Pro každý prostředek definovaný v StackConfig se tady vygeneruje odpovídající ResourceStatus . |
ResourceStatus
Název pole | Typ | Popis |
---|---|---|
ID | STRING |
Unikátní ID ve zásobníku pro prostředek. |
služba | ResourceService | Služba REST API, na které prostředek pracuje. Jedna z těchto možností: jobs ,workspace nebo dbfs . |
databricks_id | DatabricksId | Fyzické ID nasazeného prostředku. Skutečné schéma závisí na typu (službě) prostředku. |
DatabricksId
Objekt JSON, jehož pole závisí na službě.
Služba | Pole ve formátu JSON | Typ | Popis |
---|---|---|---|
pracovní prostor | cesta | STRING | Absolutní cesta poznámkového bloku nebo adresáře v pracovním prostoru Azure Databricks. Pojmenování je konzistentní s rozhraním API pracovního prostoru. |
pracovní místa | ID úkolu | STRING | ID úlohy, jak je znázorněno v pracovním prostoru Azure Databricks. Dá se použít k aktualizaci již nasazených úloh. |
dbfs | cesta | STRING | Absolutní cesta poznámkového bloku nebo adresáře v pracovním prostoru Azure Databricks. Pojmenování je konzistentní s rozhraním DBFS API. |