Örökölt Databricks parancssori felület

Fontos

Ez a dokumentáció ki lett állítva, és lehet, hogy nem frissül.

A Databricks azt javasolja, hogy a Databricks CLI 0.205-ös vagy újabb verzióját használja az örökölt Databricks CLI 0.18-os vagy újabb verziója helyett. A Databricks cli 0.18-es vagy újabb verzióját a Databricks nem támogatja. A Databricks CLI 0.205-ös és újabb verzióival kapcsolatos információkért lásd a Databricks parancssori felületét.

Ha a Databricks CLI 0.18-os vagy újabb verziójáról a Databricks CLI 0.205-ös vagy újabb verziójára szeretne migrálni, tekintse meg a Databricks parancssori felület migrálását.

Az régi Databricks parancssori felület kísérleti stádiumban van. A Databricks jelenleg nem tervez új funkciót az örökölt Databricks parancssori felülethez.

Az örökölt Databricks parancssori felület nem támogatott a Databricks támogatási csatornáiban. Ha visszajelzést szeretne küldeni, kérdéseket feltenni és problémákat szeretne jelenteni, használja a Issues lapot a Databricks-adattár parancssori felületén GitHub.

Az örökölt Databricks parancssori felület (más néven az örökölt Databricks CLI) egy olyan segédprogram, amely könnyen használható felületet biztosít a Azure Databricks platform automatizálásához a terminálról, parancssorból vagy automatizálási szkriptekből.

Követelmények

  • Python 3 –3,6 vagy újabb
  • Python 2 –2.7.9 és újabb verziók

Fontos

MacOS rendszeren az alapértelmezett Python 2 telepítés nem implementálja a TLSv1_2 protokollt, és az örökölt Databricks parancssori felület futtatása ezzel a Python telepítéssel a következő hibát eredményezi: AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'. A Homebrew használatával telepítse a Python ssl.PROTOCOL_TLSv1_2 verziót.

Korlátozások

Az örökölt Databricks parancssori felület tűzfalbarát tárolókkal való használata nem támogatott. A Databricks a Databricks Connect vagy az storage használatát javasolja.

A parancssori felület beállítása

Ez a szakasz az örökölt Databricks parancssori felület beállítását ismerteti.

A parancssori felület telepítése vagy frissítése

Ez a szakasz azt ismerteti, hogyan telepítheti vagy frissítheti a fejlesztőgépet az örökölt Databricks parancssori felület futtatásához.

A CLI telepítése

Futtassa a pip install databricks-cli a pip megfelelő verziójával a Python telepítéséhez:

pip install databricks-cli

A parancssori felület frissítése

Futtassa a pip install databricks-cli --upgrade a pip megfelelő verziójával a Python telepítéséhez:

pip install databricks-cli --upgrade

Az örökölt Databricks parancssori felület jelenleg telepített verziójának listázásához futtassa a következőt databricks --version:

databricks --version

Hitelesítés beállítása

Az örökölt Databricks CLI-parancsok futtatása előtt be kell állítania a hitelesítést az örökölt Databricks parancssori felület és a Azure Databricks között. Ez a szakasz bemutatja, hogyan állíthatja be a hitelesítést az örökölt Databricks parancssori felülethez.

Az örökölt Databricks parancssori felülettel való hitelesítéshez használhat egy Databricks személyes hozzáférési jogkivonatot vagy egy Microsoft Entra ID (korábban Azure Active Directory) jogkivonatot.

Feljegyzés

Ajánlott biztonsági eljárásként, ha automatizált eszközökkel, rendszerekkel, szkriptekkel és alkalmazásokkal hitelesít, a Databricks azt javasolja, hogy munkaterület-felhasználók helyett a szolgáltatásnevekhez tartozó személyes hozzáférési jogkivonatokat használja. A szolgáltatásnevek jogkivonatainak létrehozásáról a szolgáltatásnév jogkivonatainak kezelése című témakörben olvashat.

A hitelesítés beállítása Microsoft Entra ID token használatával

Az örökölt Databricks parancssori felület Microsoft Entra ID jogkivonat használatával történő konfigurálásához generálja a Microsoft Entra ID (korábban Azure Active Directory) jogkivonatot és tárolja a DATABRICKS_AAD_TOKEN környezeti változóban.

Futtassa az alábbi parancsot:

databricks configure --aad-token

A parancs a következőket jeleníti meg:

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

Adja meg a munkaterületenkénti URL-címet a formátummal https://adb-<workspace-id>.<random-number>.azuredatabricks.net. A munkaterületenkénti URL-cím lekéréséhez tekintse meg a munkaterületenkénti URL-címet.

A kérés befejezése után a hozzáférési hitelesítő adatok a ~/.databrickscfg fájlban lesznek tárolva Linux vagy macOS rendszeren, illetve %USERPROFILE%\.databrickscfg Windows. A fájl egy alapértelmezett profilbejegyzést tartalmaz:

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

Ha a .databrickscfg fájl már létezik, a rendszer felülírja DEFAULT a fájl konfigurációs profilját az új adatokkal. Ha ehelyett más néven szeretne konfigurációs profilt létrehozni, olvassa el a Kapcsolatprofilok című témakört.

Hitelesítés beállítása személyes Databricks hozzáférési jogkivonattal

Ha a régi Databricks parancssort személyes hozzáférési token használatára szeretné konfigurálni, futtassa a következő parancsot:

databricks configure --token

A parancs a következő üzenet kiadásával kezdődik:

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

Adja meg a munkaterületenkénti URL-címet a formátummal https://adb-<workspace-id>.<random-number>.azuredatabricks.net. A munkaterületenkénti URL-cím lekéréséhez tekintse meg a munkaterületenkénti URL-címet.

A parancs a személyes hozzáférési jogkivonat megadására vonatkozó kérés kiadásával folytatódik:

Token:

Az utasítások befejezése után a hitelesítő adatok a ~/.databrickscfg fájlban lesznek tárolva Linux vagy macOS rendszeren, vagy %USERPROFILE%\.databrickscfg Windows esetén. A fájl egy alapértelmezett profilbejegyzést tartalmaz:

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

Ha a .databrickscfg fájl már létezik, a rendszer felülírja DEFAULT a fájl konfigurációs profilját az új adatokkal. Ha ehelyett más néven szeretne konfigurációs profilt létrehozni, olvassa el a Kapcsolatprofilok című témakört.

A 0.8.1-es vagy újabb verziójú parancssori felületek esetében a fájl útvonala módosítható a DATABRICKS_CONFIG_FILE környezeti változó beállításával.

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

Fontos

A CLI 0.17.2-től kezdve a parancssori felület nem működik .netrc fájllal. Más célokra is használhat fájlokat .netrc a környezetben, de a parancssori felület nem fogja használni ezt a .netrc fájlt.

A CLI 0.8.0 és újabb verziók a következő Azure Databricks környezeti változókat támogatják:

  • DATABRICKS_HOST
  • DATABRICKS_TOKEN

A környezeti változó beállítása elsőbbséget élvez a konfigurációs fájlban szereplő beállítással szemben.

A hitelesítés beállításának tesztelése

Annak ellenőrzéséhez, hogy helyesen állította-e be a hitelesítést, futtathat-e egy parancsot, például a következőket:

databricks fs ls dbfs:/

Ha sikeres, ez a parancs felsorolja a profilhoz társított munkaterület DBFS-gyökerében található fájlokat és könyvtárakat DEFAULT .

Kapcsolatprofilok

Az örökölt Databricks CLI-konfiguráció több kapcsolatprofilt is támogat. Azonos telepítésű korábbi Databricks CLI használható API-hívások végrehajtására több Azure Databricks munkaterületen.

Kapcsolatprofil hozzáadásához adja meg a profil egyedi nevét:

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

A .databrickscfg fájl egy megfelelő profilbejegyzést tartalmaz:

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

Kapcsolati profil használata:

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

Ha --profile <profile-name> nincs megadva, a rendszer az alapértelmezett profilt használja. Ha nem található alapértelmezett profil, a rendszer kérni fogja a parancssori felület alapértelmezett profillal való konfigurálását.

Kapcsolatprofilok tesztelése

Annak ellenőrzésére, hogy helyesen állított-e be bármilyen kapcsolati profilt, futtathat egy parancsot, például a következőt az egyik kapcsolati profil nevével:

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

Ha sikeres, ez a parancs felsorolja a megadott kapcsolatprofilhoz tartozó munkaterület DBFS-gyökerében található fájlokat és könyvtárakat. Futtassa ezt a parancsot minden tesztelni kívánt kapcsolatprofilhoz.

Az elérhető profilok megtekintéséhez tekintse meg a .databrickscfg fájlt.

A parancssori felület (CLI) használata

Ez a szakasz bemutatja, hogyan kérhet le régi Databricks CLI-súgót, elemezheti az örökölt Databricks CLI-kimenetet, és hogyan hívhat meg parancsokat az egyes parancscsoportokban.

A parancssori felület parancscsoportjaival kapcsolatos segítség megjelenítése

A parancscsoport alparancsait a --help vagy a -h lehetőség használatával listázhatja. Például a DBFS CLI alparancsainak listázásához:

databricks fs -h

Parancssori felület alparancsának súgójának megjelenítése

Alparancsok súgóját a --help vagy a -h lehetőséggel listázhatja. Például a DBFS másolási fájlok alparancsának súgójának listázásához:

databricks fs cp -h

Alias parancscsoportok

Néha kényelmetlen lehet minden örökölt Databricks CLI-hívás előtt megadni egy parancscsoport nevét, például databricks workspace ls a Legacy Databricks CLI-ben. Az örökölt Databricks parancssori felület használatának megkönnyítése érdekében a parancscsoportokat rövidebb parancsokhoz aliasolhatja. Például, ha a Bourne shellben szeretné rövidíteni databricks workspace ls-t dw ls-re, hozzáadhatja alias dw="databricks workspace"-t a megfelelő bash profilhoz. Ez a fájl általában a következő helyen található: ~/.bash_profile.

Tipp

Az örökölt Databricks parancssori felület már aliasolja a databricks fs-t a dbfs-re; a databricks fs ls és a dbfs ls egyenértékűek egymással.

Használja jq a CLI kimenetének elemzéséhez

Néhány örökölt Databricks CLI-parancs a JSON-választ adja ki az API-végpontról. Esetenként hasznos lehet a JSON egyes részeinek elemzése a más parancsokhoz történő továbbításhoz. Feladatdefiníció másolásához például a settings feladat lekérése parancs mezőjét kell használnia, és ezt argumentumként kell használnia a feladat létrehozása parancshoz. Ezekben az esetekben a jq segédprogram alkalmazását javasoljuk.

Az alábbi parancs például a feladat beállításait nyomtatja ki a 233-at tartalmazó azonosítóval.

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

Kimenet:

{
  "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
}

Egy másik példaként az alábbi parancs csak a munkaterületen elérhető összes fürt nevét és azonosítóját nyomtatja ki:

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

Kimenet:

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

A jq-t például telepítheti macOS-re a Homebrew segítségével a brew install jq használatával vagy Windowsra a Chocolatey segítségével a choco install jq használatával. További információkért jqlásd a jq kézikönyvet.

JSON-sztringparaméterek

A sztringparaméterek kezelése az operációs rendszertől függően változó:

Linux vagy macOS

A JSON-sztringparamétereket szimpla idézőjelek közé kell tenni. Példa:

'["20180505", "alantest"]'

Windows

A JSON-sztringparamétereket dupla idézőjelek közé kell tenni, valamint a sztringben szereplő idézőjel-karakterek előtt \ karakternek kell szerepelnie. Példa:

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

Hibaelhárítás

Az alábbi szakaszok tippeket nyújtanak az örökölt Databricks parancssori felülettel kapcsolatos gyakori problémák elhárításához.

Az EOF databricks configure használata nem működik

A Databricks CLI 0.12.0-s és újabb verziói esetében nem működik, ha a szkriptben a fájl (EOF) sorozat vége paramétert ad át a databricks configure parancsnak. A következő szkript például azt eredményezi, hogy a Databricks parancssori felülete figyelmen kívül hagyja a paramétereket, és nem jelenik meg hibaüzenet:

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

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

A probléma megoldásához tegye az alábbiak egyikét:

  • Használja a hitelesítés beállítása című cikkben ismertetett egyéb programozott konfigurációs beállítások egyikét.
  • Adja hozzá manuálisan az host és token az értékeket a fájlhoz a .databrickscfgHitelesítés beállítása című cikkben leírtak szerint.
  • Telepítse vissza a Databricks parancssori felületét a 0.11.0 vagy alatti verzióra, és futtassa újra a szkriptet.

Parancssori felületi parancsok