Aracılığıyla paylaş


Databricks CLI (eski)

Önemli

Bu belge kullanımdan kaldırılmıştır ve güncelleştirilmeyebilir.

Databricks, eski Databricks CLI sürüm 0.18 veya üzeri yerine Databricks CLI sürüm 0.205 veya üzerini kullanmanızı önerir. Databricks CLI sürüm 0.18 veya üzeri Databricks tarafından desteklenmez. Databricks CLI 0.205 ve üzeri sürümleri hakkında bilgi için bkz . Databricks CLI nedir?.

Databricks CLI sürüm 0.18 veya altından Databricks CLI sürüm 0.205 veya üzeri sürüme geçiş yapmak için bkz . Databricks CLI geçişi.

Eski Databricks CLI deneysel bir durumdadır. Databricks, şu anda eski Databricks CLI için yeni özellik çalışmadığını planlıyor.

Eski Databricks CLI, Databricks Destek kanalları aracılığıyla desteklenmez. Geri bildirim sağlamak, soru sormak ve sorunları bildirmek için GitHub'daki Databricks deposu için Komut Satırı Arabirimi'ndeki Sorunlar sekmesini kullanın.

Eski Databricks komut satırı arabirimi (eski Databricks CLI olarak da bilinir), terminal, komut istemi veya otomasyon betiklerinizden Azure Databricks platformunu otomatikleştirmek için kullanımı kolay bir arabirim sağlayan bir yardımcı programdır.

Gereksinimler

  • Python 3 - 3.6 ve üzeri
  • Python 2 - 2.7.9 ve üzeri

Önemli

macOS'ta, varsayılan Python 2 yüklemesi TLSv1_2 protokolunu uygulamaz ve eski Databricks CLI'yi bu Python yüklemesi ile çalıştırmak şu hataya neden olur: AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'. Python’ın ssl.PROTOCOL_TLSv1_2 içeren bir sürümünü yüklemek için Homebrew’u kullanın.

Sınırlamalar

Eski Databricks CLI'nin güvenlik duvarı etkin depolama kapsayıcılarıyla kullanılması desteklenmez. Databricks, Databricks Connect veya az storage kullanmanızı önerir.

CLI'yı ayarlama

Bu bölümde, eski Databricks CLI'nin nasıl ayarlanacağı açıklanmaktadır.

CLI'yi yükleme veya güncelleştirme

Bu bölümde, eski Databricks CLI'yi çalıştırmak için geliştirme makinenizin nasıl yükleneceği veya güncelleştirildiği açıklanır.

CLI'yi yükleme

Python yüklemeniz için uygun sürümünü pip kullanarak çalıştırınpip install databricks-cli:

pip install databricks-cli

CLI’yı güncelleştirme

Python yüklemeniz için uygun sürümünü pip kullanarak çalıştırınpip install databricks-cli --upgrade:

pip install databricks-cli --upgrade

Şu anda yüklü olan eski Databricks CLI sürümünü listelemek için komutunu çalıştırın databricks --version:

databricks --version

Kimlik doğrulamayı ayarlama

Eski Databricks CLI komutlarını çalıştırabilmeniz için önce eski Databricks CLI ile Azure Databricks arasında kimlik doğrulamasını ayarlamanız gerekir. Bu bölümde, eski Databricks CLI için kimlik doğrulamasının nasıl ayarlanacağı açıklanmaktadır.

Eski Databricks CLI ile kimlik doğrulaması yapmak için Databricks kişisel erişim belirteci veya Microsoft Entra Kimliği (eski adıYla Azure Active Directory) belirteci kullanabilirsiniz.

Not

En iyi güvenlik uygulaması olarak otomatik araçlar, sistemler, betikler ve uygulamalarla kimlik doğrulaması yaptığınızda Databricks, çalışma alanı kullanıcıları yerine hizmet sorumlularına ait kişisel erişim belirteçlerini kullanmanızı önerir. Hizmet sorumlularına yönelik belirteçler oluşturmak için bkz . Hizmet sorumlusu için belirteçleri yönetme.

Microsoft Entra Id (eski adıyla Azure Active Directory) belirteci kullanarak kimlik doğrulamayı ayarlama

Microsoft Entra Id belirtecini kullanarak eski Databricks CLI'yi yapılandırmak için Microsoft Entra Id (eski adıyla Azure Active Directory) belirtecini oluşturun ve ortam değişkeninde DATABRICKS_AAD_TOKENdepolayın.

Şu komutu çalıştırın:

databricks configure --aad-token

Bu komut şu istemi verir:

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

Çalışma alanı başına URL'nizi biçiminde https://adb-<workspace-id>.<random-number>.azuredatabricks.netgirin. Çalışma alanı başına URL'yi almak için bkz . Çalışma alanı başına URL.

İstemi tamamladıktan sonra, erişim kimlik bilgileriniz Linux veya macOS veya %USERPROFILE%\.databrickscfg Windows'daki dosyada ~/.databrickscfg depolanır. Dosya varsayılan bir profil girdisi içerir:

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

.databrickscfg Dosya zaten varsa, yeni verilerle bu dosyanın DEFAULT yapılandırma profilinin üzerine yazılır. Bunun yerine farklı bir ada sahip bir yapılandırma profili oluşturmak için bkz . Bağlantı profilleri.

Databricks kişisel erişim belirteci kullanarak kimlik doğrulamasını ayarlama

Eski Databricks CLI'yi kişisel erişim belirteci kullanacak şekilde yapılandırmak için aşağıdaki komutu çalıştırın:

databricks configure --token

Komut, istemini vererek başlar:

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

Çalışma alanı başına URL'nizi biçiminde https://adb-<workspace-id>.<random-number>.azuredatabricks.netgirin. Çalışma alanı başına URL'yi almak için bkz . Çalışma alanı başına URL.

Komut, kişisel erişim belirtecinizi girme istemini vererek devam eder:

Token:

İstemleri tamamladıktan sonra, erişim kimlik bilgileriniz Linux veya macOS %USERPROFILE%\.databrickscfg ya da Windows'daki dosyada ~/.databrickscfg depolanır. Dosya varsayılan bir profil girdisi içerir:

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

.databrickscfg Dosya zaten varsa, yeni verilerle bu dosyanın DEFAULT yapılandırma profilinin üzerine yazılır. Bunun yerine farklı bir ada sahip bir yapılandırma profili oluşturmak için bkz . Bağlantı profilleri.

CLI 0.8.1 ve üzeri için DATABRICKS_CONFIG_FILE ortam değişkenini ayarlayarak bu dosyanın yolunu değiştirebilirsiniz.

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

Önemli

CLI 0.17.2 sürümünden başlayarak, CLI bir .netrc dosyasıyla çalışmaz. Ortamınızda başka amaçlarla bir .netrc dosyanız olabilir, ancak CLI bu .netrc dosyayı kullanmaz.

CLI 0.8.0 ve üzeri aşağıdaki Azure Databricks ortam değişkenlerini destekler:

  • DATABRICKS_HOST
  • DATABRICKS_TOKEN

Bir ortam değişkeni ayarı, yapılandırma dosyasındaki ayardan daha yüksek önceliğe sahip olur.

Kimlik doğrulama kurulumunuzu test edin

Kimlik doğrulamasını doğru ayarlayıp ayarlamadığınızdan denetlemek için aşağıdaki gibi bir komut çalıştırabilirsiniz:

databricks fs ls dbfs:/

Başarılı olursa, bu komut profilinizle DEFAULT ilişkili çalışma alanının DBFS kökündeki dosyaları ve dizinleri listeler.

Bağlantı profilleri

Eski Databricks CLI yapılandırması birden çok bağlantı profilini destekler. Aynı eski Databricks CLI yüklemesi, birden çok Azure Databricks çalışma alanında API çağrıları yapmak için kullanılabilir.

Bağlantı profili eklemek için profil için benzersiz bir ad belirtin:

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

Dosya karşılık .databrickscfg gelen bir profil girdisi içerir:

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

Bağlantı profilini kullanmak için:

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

Belirtilmezse --profile <profile-name> , varsayılan profil kullanılır. Varsayılan profil bulunmazsa, CLI'yi varsayılan profille yapılandırmanız istenir.

Bağlantı profillerinizi test edin

Bağlantı profillerini doğru ayarlayıp ayarlamadığınızdan denetlemek için, bağlantı profili adlarınızdan biriyle aşağıdaki gibi bir komut çalıştırabilirsiniz:

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

Başarılı olursa, bu komut belirtilen bağlantı profili için çalışma alanının DBFS kökündeki dosyaları ve dizinleri listeler. Test etmek istediğiniz her bağlantı profili için bu komutu çalıştırın.

Kullanılabilir profillerinizi görüntülemek için dosyanıza .databrickscfg bakın.

CLI kullanma

Bu bölümde, her komut grubunda eski Databricks CLI yardımını alma, eski Databricks CLI çıkışını ayrıştırma ve komutları çağırma işlemleri gösterilmektedir.

CLI komut grubu yardımını görüntüleme

veya -h seçeneğini kullanarak --help herhangi bir komut grubunun alt komutlarını listelersiniz. Örneğin, DBFS CLI alt komutlarını listelemek için:

databricks fs -h

CLI alt komutunu görüntüleme yardımı

Veya -h seçeneğini kullanarak bir alt komutun yardımını --help listelersiniz. Örneğin, DBFS kopyalama dosyaları alt komutunun yardımını listelemek için:

databricks fs cp -h

Diğer ad komut grupları

Bazen her eski Databricks CLI çağrısına, örneğin databricks workspace ls eski Databricks CLI'sinde bir komut grubunun adını önek eklemek uygunsuz olabilir. Eski Databricks CLI'sinin kullanımını kolaylaştırmak için komut gruplarını daha kısa komutlara diğer ad olarak kullanabilirsiniz. Örneğin, Bourne kabuğunda değerini yeniden olarak kısaltmak databricks workspace ls dw ls için uygun bash profiline ekleyebilirsiniz alias dw="databricks workspace" . Genelde, bu dosya ~/.bash_profile konumunda bulunur.

İpucu

Eski Databricks CLI zaten için dbfsdatabricks fs ls diğer adlardır databricks fs ve dbfs ls eşdeğerdir.

CLI çıkışını ayrıştırmak için kullanın jq

Bazı eski Databricks CLI komutları, API uç noktasından JSON yanıtı çıkışı oluşturur. Bazı durumlarda, diğer komutlara yönelik kanallar oluşturmak için JSON öğesinin parçalarını ayrıştırma faydalı olabilir. Örneğin, bir iş tanımını kopyalamak için bir get job komutunun settings alanını almanız ve bunu create job komutu için bağımsız değişken olarak kullanmanız gerekir. Bu durumlarda, jq yardımcı programının kullanmanızı öneririz.

Örneğin, aşağıdaki komut işin ayarlarını 233 kimliğiyle yazdırır.

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

Çıktı:

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

Başka bir örnek olarak, aşağıdaki komut yalnızca çalışma alanındaki kullanılabilir tüm kümelerin adlarını ve kimliklerini yazdırır:

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

Çıktı:

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

Örneğin, ile Homebrew kullanarak macOS'a veya ile brew install jq Chocolatey choco install jqkullanarak Windows'a yükleyebilirsinizjq. jq hakkında daha fazla bilgi edinmek için bkz. jq kullanıcı kılavuzu.

JSON dizesi parametreleri

Dize parametreleri işletim sisteminize bağlı olarak farklı şekilde işlenir:

Linux veya macOS

JSON dizesi parametrelerini tek tırnak içine almanız gerekir. Örneğin:

'["20180505", "alantest"]'

Windows

JSON dizesi parametrelerini çift tırnak içine almanız ve dizenin içindeki tırnak işaretlerinden önce \ kullanmanız gerekir. Örneğin:

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

Sorun giderme

Aşağıdaki bölümlerde, eski Databricks CLI ile ilgili yaygın sorunları gidermeye yönelik ipuçları sağlanır.

ile databricks configure EOF kullanma çalışmıyor

Databricks CLI 0.12.0 ve üzeri için komut dosyasına parametre databricks configure geçirmek için bir betikteki dosya sonu (EOF) dizisinin kullanılması çalışmaz. Örneğin, aşağıdaki betik Databricks CLI'nın parametreleri yoksaymasına neden olur ve hiçbir hata iletisi oluşmaz:

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

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

Bu sorunu düzeltmek için aşağıdakilerden birini yapın:

CLI komutları