Sdílet prostřednictvím


Rozhraní příkazového řádku Databricks (starší verze)

Důležité

Tato dokumentace byla vyřazena a nemusí být aktualizována.

Databricks doporučuje používat Databricks CLI verze 0.205 nebo novější místo starší verze Rozhraní příkazového řádku Databricks verze 0.18 nebo novější. Databricks CLI verze 0.18 nebo novější nepodporuje Databricks. Informace o rozhraní příkazového řádku Databricks verze 0.205 a vyšší najdete v tématu Co je rozhraní příkazového řádku Databricks?.

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.

Starší verze rozhraní příkazového řádku Databricks je v experimentálním stavu. Databricks momentálně neplánuje žádnou novou funkci pro starší rozhraní příkazového řádku Databricks.

Starší verze rozhraní příkazového řádku Databricks není podporována prostřednictvím kanálů podpory Databricks. Pokud chcete poskytnout zpětnou vazbu, pokládat otázky a nahlásit problémy, použijte kartu Problémy v úložišti Příkazového řádku pro úložiště Databricks na GitHubu.

Starší rozhraní příkazového řádku Databricks (označované také jako starší rozhraní příkazového řádku Databricks) je nástroj, který poskytuje snadno použitelné rozhraní pro automatizaci platformy Azure Databricks z terminálu, příkazového řádku nebo automatizačních skriptů.

Požadavky

  • Python 3 – 3.6 a vyšší
  • Python 2 – 2.7.9 a vyšší

Důležité

Výchozí instalace Pythonu 2 v systému macOS neimplementuje protokol TLSv1_2 a spuštění starší verze rozhraní příkazového řádku Databricks s touto instalací Pythonu způsobí chybu: AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2' K instalaci verze Pythonu s ssl.PROTOCOL_TLSv1_2 můžete použít Homebrew.

Omezení

Použití starší verze rozhraní příkazového řádku Databricks s kontejnery úložiště s povolenou bránou firewall se nepodporuje. Služba Databricks doporučuje použít Databricks Connect nebo az storage.

Nastavení rozhraní příkazového řádku

Tato část popisuje, jak nastavit starší verzi rozhraní příkazového řádku Databricks.

Instalace nebo aktualizace rozhraní příkazového řádku

Tato část popisuje, jak nainstalovat nebo aktualizovat vývojový počítač tak, aby běžel starší verzi Rozhraní příkazového řádku Databricks.

Instalace rozhraní příkazového řádku

Spusťte pip install databricks-cli ho pomocí odpovídající verze instalace Pythonu pip :

pip install databricks-cli

Aktualizace rozhraní příkazového řádku

Spusťte pip install databricks-cli --upgrade ho pomocí odpovídající verze instalace Pythonu pip :

pip install databricks-cli --upgrade

Pokud chcete zobrazit seznam verze starší verze rozhraní příkazového řádku Databricks, která je aktuálně nainstalovaná, spusťte databricks --versionpříkaz:

databricks --version

Nastavení ověřování

Než budete moct spouštět starší příkazy Rozhraní příkazového řádku Databricks, musíte nastavit ověřování mezi starší verzí Rozhraní příkazového řádku Databricks a Azure Databricks. Tato část popisuje, jak nastavit ověřování pro starší verzi rozhraní příkazového řádku Databricks.

Pokud se chcete ověřit pomocí starší verze Rozhraní příkazového řádku Databricks, můžete použít token pat Databricks nebo token Microsoft Entra ID (dříve Azure Active Directory).

Poznámka:

Osvědčeným postupem při ověřování pomocí automatizovaných nástrojů, systémů, skriptů a aplikací doporučuje Databricks místo uživatelů pracovního prostoru používat tokeny patního přístupu, které patří instančním objektům . Pokud chcete vytvořit tokeny pro instanční objekty, přečtěte si téma Správa tokenů instančního objektu.

Nastavení ověřování pomocí tokenu Microsoft Entra ID (dříve Azure Active Directory)

Pokud chcete nakonfigurovat starší rozhraní příkazového řádku Databricks pomocí tokenu ID Microsoft Entra, vygenerujte token Microsoft Entra ID (dříve Azure Active Directory) a uložte ho do proměnné DATABRICKS_AAD_TOKENprostředí .

Spusťte následující příkaz:

databricks configure --aad-token

Tento příkaz zobrazí výzvu pro

Databricks Host (should begin with https://):

Zadejte adresu URL pro jednotlivé pracovní prostory s formátem https://adb-<workspace-id>.<random-number>.azuredatabricks.net. Pokud chcete získat adresu URL pro jednotlivé pracovní prostory, přečtěte si téma Adresa URL pro jednotlivé pracovní prostory.

Po dokončení výzvy se vaše přístupové přihlašovací údaje uloží do souboru ~/.databrickscfg v Linuxu nebo macOS nebo %USERPROFILE%\.databrickscfg ve Windows. Soubor obsahuje výchozí položku profilu:

[DEFAULT]
host = <workspace-URL>
token = <Azure-AD-token>

.databrickscfg Pokud soubor již existuje, konfigurační profil daného souboru DEFAULT se přepíše novými daty. Pokud chcete vytvořit konfigurační profil s jiným názvem, přečtěte si téma Profily připojení.

Nastavení ověřování pomocí tokenů PAT služby Databricks

Pokud chcete nakonfigurovat starší rozhraní příkazového řádku Databricks tak, aby používalo token pat, spusťte následující příkaz:

databricks configure --token

Příkaz začíná vydáním výzvy:

Databricks Host (should begin with https://):

Zadejte adresu URL pro jednotlivé pracovní prostory s formátem https://adb-<workspace-id>.<random-number>.azuredatabricks.net. Pokud chcete získat adresu URL pro jednotlivé pracovní prostory, přečtěte si téma Adresa URL pro jednotlivé pracovní prostory.

Příkaz pokračuje vystavením výzvy k zadání vašeho osobního přístupového tokenu:

Token:

Po dokončení výzev se vaše přístupové přihlašovací údaje uloží do souboru ~/.databrickscfg v Linuxu nebo macOS nebo %USERPROFILE%\.databrickscfg ve Windows. Soubor obsahuje výchozí položku profilu:

[DEFAULT]
host = <workspace-URL>
token = <personal-access-token>

.databrickscfg Pokud soubor již existuje, konfigurační profil daného souboru DEFAULT se přepíše novými daty. Pokud chcete vytvořit konfigurační profil s jiným názvem, přečtěte si téma Profily připojení.

Pro rozhraní CLI 0.8.1 a vyšší můžete změnit cestu k tomuto souboru nastavením proměnné prostředí DATABRICKS_CONFIG_FILE.

Linux nebo macOS
export DATABRICKS_CONFIG_FILE=<path-to-file>
Windows
setx DATABRICKS_CONFIG_FILE "<path-to-file>" /M

Důležité

Počínaje rozhraním příkazového řádku 0.17.2 rozhraní příkazového řádku nefunguje se souborem .netrc. Soubor můžete mít .netrc ve svém prostředí pro jiné účely, ale rozhraní příkazového řádku tento soubor nepoužije .netrc .

Rozhraní příkazového řádku 0.8.0 a novější podporuje následující proměnné prostředí Azure Databricks:

  • DATABRICKS_HOST
  • DATABRICKS_TOKEN

Nastavení proměnné prostředí má přednost před nastavením v konfiguračním souboru.

Otestování nastavení ověřování

Pokud chcete zkontrolovat, jestli jste správně nastavili ověřování, můžete spustit příkaz, například následující:

databricks fs ls dbfs:/

V případě úspěchu tento příkaz vypíše soubory a adresáře v kořenovém adresáři DBFS pracovního prostoru přidruženého k vašemu DEFAULT profilu.

Profily připojení

Starší konfigurace rozhraní příkazového řádku Databricks podporuje více profilů připojení. Stejnou instalaci starší verze Rozhraní příkazového řádku Databricks můžete použít k volání rozhraní API pro více pracovních prostorů Azure Databricks.

Pokud chcete přidat profil připojení, zadejte jedinečný název profilu:

databricks configure [--token | --aad-token] --profile <profile-name>

Soubor .databrickscfg obsahuje odpovídající položku profilu:

[<profile-name>]
host = <workspace-URL>
token = <token>

Použití profilu připojení:

databricks <group> <command> --profile <profile-name>

Pokud --profile <profile-name> není zadaný, použije se výchozí profil. Pokud se výchozí profil nenajde, zobrazí se výzva ke konfiguraci rozhraní příkazového řádku s výchozím profilem.

Testování profilů připojení

Pokud chcete zkontrolovat, jestli jste správně nastavili nějaké profily připojení, můžete spustit příkaz, například následující s jedním z názvů profilů připojení:

databricks fs ls dbfs:/ --profile <profile-name>

V případě úspěchu tento příkaz vypíše soubory a adresáře v kořenovém adresáři DBFS pracovního prostoru pro zadaný profil připojení. Spusťte tento příkaz pro každý profil připojení, který chcete otestovat.

Pokud chcete zobrazit dostupné profily, podívejte se na soubor .databrickscfg .

Použití rozhraní příkazového řádku

V této části se dozvíte, jak získat starší nápovědu k rozhraní příkazového řádku Databricks, parsovat starší výstup rozhraní příkazového řádku Databricks a vyvolat příkazy v každé skupině příkazů.

Zobrazení nápovědy ke skupině příkazů rozhraní CLI

Podpříkazy pro libovolnou skupinu příkazů zobrazíte pomocí --help možnosti nebo -h příkazu. Pokud například chcete zobrazit seznam dílčích příkazů rozhraní příkazového řádku DBFS:

databricks fs -h

Zobrazení nápovědy k podpříkazu rozhraní příkazového řádku

Vypíšete nápovědu k podpříkazu pomocí --help možnosti nebo -h možnosti. Pokud například chcete zobrazit nápovědu pro podpříkaz kopírování souborů DBFS:

databricks fs cp -h

Skupiny příkazů aliasu

Někdy může být nevhodné předponovat každé starší vyvolání rozhraní příkazového řádku Databricks názvem skupiny příkazů, například databricks workspace ls ve starší verzi rozhraní příkazového řádku Databricks. Aby bylo starší rozhraní příkazového řádku Databricks jednodušší, můžete aliasovat skupiny příkazů pro kratší příkazy. Pokud chcete například zkrátit databricks workspace ls zobrazení dw ls do prostředí Bourne znovu, můžete ho přidat alias dw="databricks workspace" do příslušného profilu Bash. Tento soubor se obvykle nachází v umístění ~/.bash_profile.

Tip

Starší verze rozhraní příkazového řádku Databricks už aliasy databricks fs dbfspro ; databricks fs ls a dbfs ls jsou ekvivalentní.

Použití jq k analýze výstupu rozhraní příkazového řádku

Některé starší příkazy rozhraní příkazového řádku Databricks vypíše odpověď JSON z koncového bodu rozhraní API. Někdy může být užitečné parsovat části JSON, abyste je mohli použít v jiných příkazech. Pokud chcete například zkopírovat definici úlohy, musíte vzít settings pole příkazu get job a použít ho jako argument příkazu create job. V takových případech doporučujeme použít nástroj jq.

Například následující příkaz vytiskne nastavení úlohy s ID 233.

databricks jobs list --output JSON | jq '.jobs[] | select(.job_id == 233) | .settings'

Výstup:

{
  "name": "Quickstart",
  "new_cluster": {
    "spark_version": "7.5.x-scala2.12",
    "spark_env_vars": {
      "PYSPARK_PYTHON": "/databricks/python3/bin/python3"
    },
    "num_workers": 8,
    ...
  },
  "email_notifications": {},
  "timeout_seconds": 0,
  "notebook_task": {
    "notebook_path": "/Quickstart"
  },
  "max_concurrent_runs": 1
}

V dalším příkladu následující příkaz vytiskne pouze názvy a ID všech dostupných clusterů v pracovním prostoru:

databricks clusters list --output JSON | jq '[ .clusters[] | { name: .cluster_name, id: .cluster_id } ]'

Výstup:

[
  {
    "name": "My Cluster 1",
    "id": "1234-567890-grip123"
  },
  {
    "name": "My Cluster 2",
    "id": "2345-678901-patch234"
  }
]

Například v macOS můžete nainstalovat jq pomocí Homebrew s brew install jq nebo ve Windows pomocí Chocolatey s choco install jq. Další informace o nástroji jq najdete v příručce k nástroji jq.

Parametry řetězců JSON

Parametry řetězců se zpracovávají odlišně v závislosti na operačním systému:

Linux nebo macOS

Parametry řetězců JSON musíte uzavřít do jednoduchých uvozovek. Příklad:

'["20180505", "alantest"]'

Windows

Parametry řetězců JSON musíte uzavřít do dvojitých uvozovek a znakům uvozovek uvnitř řetězce musí předcházet znak \. Příklad:

"[\"20180505\", \"alantest\"]"

Řešení problému

Následující části obsahují tipy pro řešení běžných problémů se starší verzí Rozhraní příkazového řádku Databricks.

Použití funkce EOF s databricks configure nefunguje

Pro Databricks CLI 0.12.0 a vyšší pomocí sekvence konce souboru (EOF) ve skriptu pro předání parametrů příkazu databricks configure nefunguje. Následující skript například způsobí, že rozhraní příkazového řádku Databricks ignoruje parametry a nevyvolá se žádná chybová zpráva:

# Do not do this.
databricksUrl=<per-workspace-url>
databricksToken=<personal-access-token-or-Azure-AD-token>

databricks configure --token << EOF
$databricksUrl
$databricksToken
EOF

Pokud chcete tento problém vyřešit, udělejte jednu z těchto věcí:

  • Použijte jednu z dalších programových možností konfigurace, jak je popsáno v tématu Nastavení ověřování.
  • Do souboru přidejte hodnoty host token .databrickscfg ručně, jak je popsáno v části Nastavení ověřování.
  • Downgrade instalace rozhraní příkazového řádku Databricks na verzi 0.11.0 nebo novější a spusťte skript znovu.

Příkazy rozhraní příkazového řádku