Bagikan melalui


Databricks CLI (warisan)

Penting

Dokumentasi ini telah dihentikan dan mungkin tidak diperbarui.

Databricks merekomendasikan agar Anda menggunakan Databricks CLI versi 0.205 atau lebih tinggi alih-alih Databricks CLI warisan versi 0.18 atau di bawahnya. Databricks CLI versi 0.18 atau yang lebih baru tidak didukung oleh Databricks. Untuk informasi tentang Databricks CLI versi 0.205 ke atas, lihat Apa itu Databricks CLI?.

Untuk bermigrasi dari Databricks CLI versi 0.18 atau di bawahnya ke Databricks CLI versi 0.205 atau lebih tinggi, lihat migrasi CLI Databricks.

CLI Databricks warisan berada dalam status Eksperimental . Databricks merencanakan tidak ada fitur baru yang berfungsi untuk CLI Databricks warisan saat ini.

CLI Databricks warisan tidak didukung melalui saluran Dukungan Databricks. Untuk memberikan umpan balik, mengajukan pertanyaan, dan melaporkan masalah, gunakan tab Masalah di Antarmuka Baris Perintah untuk repositori Databricks di GitHub.

Antarmuka baris perintah Databricks warisan (juga dikenal sebagai CLI Databricks warisan) adalah utilitas yang menyediakan antarmuka yang mudah digunakan untuk mengotomatiskan platform Azure Databricks dari terminal, prompt perintah, atau skrip otomatisasi Anda.

Persyaratan

  • Python 3 - 3.6 ke atas
  • Python 2 - 2.7.9 ke atas

Penting

Di macOS, penginstalan Python 2 default tidak menerapkan protokol TLSv1_2, dan menjalankan CLI Databricks warisan dengan penginstalan Python ini menghasilkan kesalahan: AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'. Gunakan Homebrew untuk menginstal versi Python yang memiliki ssl.PROTOCOL_TLSv1_2.

Batasan

Menggunakan CLI Databricks warisan dengan kontainer penyimpanan yang diaktifkan firewall tidak didukung. Databricks merekomendasikan Anda menggunakan Databricks Koneksi atau penyimpanan az.

Menyiapkan CLI

Bagian ini menjelaskan cara menyiapkan CLI Databricks warisan.

Menginstal atau memperbarui CLI

Bagian ini menjelaskan cara menginstal atau memperbarui komputer pengembangan Anda untuk menjalankan CLI Databricks warisan.

Pasang CLI

Jalankan pip install databricks-cli dengan menggunakan versi pip penginstalan Python yang sesuai:

pip install databricks-cli

Perbarui CLI

Jalankan pip install databricks-cli --upgrade dengan menggunakan versi pip penginstalan Python yang sesuai:

pip install databricks-cli --upgrade

Untuk mencantumkan versi CLI Databricks warisan yang saat ini diinstal, jalankan databricks --version:

databricks --version

Siapkan autentikasi

Sebelum dapat menjalankan perintah CLI Databricks warisan, Anda harus menyiapkan autentikasi antara CLI Databricks warisan dan Azure Databricks. Bagian ini menjelaskan cara menyiapkan autentikasi untuk CLI Databricks warisan.

Untuk mengautentikasi dengan CLI Databricks warisan, Anda dapat menggunakan token akses pribadi Databricks atau token ID Microsoft Entra (sebelumnya Azure Active Directory).

Catatan

Sebagai praktik terbaik keamanan, saat Anda mengautentikasi dengan alat, sistem, skrip, dan aplikasi otomatis, Databricks merekomendasikan agar Anda menggunakan token akses pribadi milik perwakilan layanan, bukan pengguna ruang kerja. Untuk membuat token untuk perwakilan layanan, lihat Mengelola token untuk perwakilan layanan.

Menyiapkan autentikasi menggunakan token ID Microsoft Entra (sebelumnya Azure Active Directory)

Untuk mengonfigurasi CLI Databricks warisan menggunakan token ID Microsoft Entra, buat token ID Microsoft Entra (sebelumnya Azure Active Directory) dan simpan dalam variabel DATABRICKS_AAD_TOKENlingkungan .

Jalankan perintah berikut:

databricks configure --aad-token

Perintah mengeluarkan prompt:

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

Masukkan URL per ruang kerja Anda, dengan format https://adb-<workspace-id>.<random-number>.azuredatabricks.net. Untuk mendapatkan URL per ruang kerja, lihat URL Per ruang kerja.

Setelah Anda menyelesaikan perintah, kredensial akses Anda disimpan dalam file ~/.databrickscfg di Linux atau macOS atau %USERPROFILE%\.databrickscfg di Windows. File berisi entri profil default:

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

.databrickscfg Jika file sudah ada, profil konfigurasi file tersebut DEFAULT ditimpa dengan data baru. Untuk membuat profil konfigurasi dengan nama yang berbeda, lihat profil Koneksi ion.

Siapkan autentikasi dengan menggunakan token akses pribadi Azure Databricks

Untuk mengonfigurasi CLI Databricks warisan untuk menggunakan token akses pribadi, jalankan perintah berikut:

databricks configure --token

Perintah dimulai dengan mengeluarkan prompt:

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

Masukkan URL per ruang kerja Anda, dengan format https://adb-<workspace-id>.<random-number>.azuredatabricks.net. Untuk mendapatkan URL per ruang kerja, lihat URL Per ruang kerja.

Perintah berlanjut dengan mengeluarkan prompt untuk memasukkan token akses pribadi Anda:

Token:

Setelah Anda menyelesaikan perintah, kredensial akses Anda disimpan dalam file ~/.databrickscfg di Linux atau macOS, atau %USERPROFILE%\.databrickscfg di Windows. File berisi entri profil default:

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

.databrickscfg Jika file sudah ada, profil konfigurasi file tersebut DEFAULT ditimpa dengan data baru. Untuk membuat profil konfigurasi dengan nama yang berbeda, lihat profil Koneksi ion.

Untuk CLI 0.8.1 ke atas, Anda dapat mengubah jalur file ini dengan mengatur variabel DATABRICKS_CONFIG_FILElingkungan.

Linux atau macos
export DATABRICKS_CONFIG_FILE=<path-to-file>
Windows
setx DATABRICKS_CONFIG_FILE "<path-to-file>" /M

Penting

Dimulai CLI 0.17.2, CLI tidak berfungsi dengan file .netrc. Anda dapat memiliki file .netrc di lingkungan Anda untuk tujuan lain, tetapi CLI tidak akan menggunakan file .netrc tersebut.

CLI 0.8.0 ke atas mendukung variabel lingkungan Azure Databricks berikut:

  • DATABRICKS_HOST
  • DATABRICKS_TOKEN

Pengaturan variabel lingkungan lebih diutamakan daripada pengaturan dalam file konfigurasi.

Menguji penyiapan autentikasi Anda

Untuk memeriksa apakah Anda menyiapkan autentikasi dengan benar, Anda bisa menjalankan perintah seperti berikut ini:

databricks fs ls dbfs:/

Jika berhasil, perintah ini mencantumkan file dan direktori di akar DBFS ruang kerja yang terkait dengan profil Anda DEFAULT .

Profil koneksi

Konfigurasi CLI Databricks warisan mendukung beberapa profil koneksi. Penginstalan CLI Databricks warisan yang sama dapat digunakan untuk melakukan panggilan API di beberapa ruang kerja Azure Databricks.

Untuk menambahkan profil koneksi, tentukan nama unik untuk profil:

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

File .databrickscfg berisi entri profil yang sesuai:

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

Untuk menggunakan profil koneksi:

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

Jika --profile <profile-name> tidak ditentukan, profil default digunakan. Jika profil default tidak ditemukan, Anda akan diminta untuk mengonfigurasi CLI dengan profil default.

Menguji profil koneksi Anda

Untuk memeriksa apakah Anda menyiapkan profil koneksi dengan benar, Anda bisa menjalankan perintah seperti berikut ini dengan salah satu nama profil koneksi Anda:

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

Jika berhasil, perintah ini mencantumkan file dan direktori di akar DBFS ruang kerja untuk profil koneksi yang ditentukan. Jalankan perintah ini untuk setiap profil koneksi yang ingin Anda uji.

Untuk melihat profil yang tersedia, lihat file Anda .databrickscfg .

Menggunakan CLI

Bagian ini menunjukkan kepada Anda cara mendapatkan bantuan CLI Databricks warisan, mengurai output CLI Databricks warisan, dan memanggil perintah di setiap grup perintah.

Bantuan grup perintah Display CLI

Anda mencantumkan sub perintah untuk grup perintah apa pun dengan menggunakan --help opsi atau -h . Misalnya, untuk mencantumkan sub-perintah DBFS CLI:

databricks fs -h

Tampilkan bantuan subkommand CLI

Anda mencantumkan bantuan untuk sub-perintah dengan menggunakan --help opsi atau -h . Misalnya, untuk mencantumkan bantuan untuk sub-perintah file salinan DBFS:

databricks fs cp -h

Grup perintah alias

Terkadang tidak nyaman untuk mengawali setiap pemanggilan CLI Databricks warisan dengan nama grup perintah, misalnya databricks workspace ls dalam CLI Databricks warisan. Untuk membuat CLI Databricks warisan lebih mudah digunakan, Anda dapat alias grup perintah ke perintah yang lebih pendek. Misalnya, untuk mempersingkat databricks workspace ls ke dw ls dalam shell Bourne again, Anda dapat menambahkan alias dw="databricks workspace" ke profil bash yang sesuai. Biasanya, file ini terletak di ~/.bash_profile.

Tip

CLI Databricks warisan sudah alias databricks fsdbfs; databricks fs ls dan dbfs ls setara.

Gunakan jq untuk mengurai output CLI

Beberapa perintah CLI Databricks warisan menghasilkan respons JSON dari titik akhir API. Terkadang berguna untuk mengurai bagian JSON ke dalam perintah lain. Misalnya, untuk menyalin definisi pekerjaan, Anda harus mengambil settings bidang perintah dapatkan pekerjaan dan menggunakannya sebagai argumen untuk perintah buat pekerjaan. Dalam kasus ini, kami sarankan Anda untuk menggunakan utilitas jq.

Misalnya, perintah berikut mencetak pengaturan pekerjaan dengan ID 233.

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

Output:

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

Sebagai contoh lain, perintah berikut hanya mencetak nama dan ID dari semua kluster yang tersedia di ruang kerja:

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

Output:

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

Anda dapat menginstal jq misalnya di macOS dengan menggunakan Homebrew dengan brew install jq atau di Windows dengan menggunakan Chocolatey dengan choco install jq. Untuk informasi lebih lanjut jqtentang, lihat Manual jq.

Parameter untai JavaScript Object Notation

Parameter string ditangani secara berbeda tergantung pada sistem operasi Anda:

Linux atau macos

Anda harus melampirkan parameter string JSON dalam satu tanda kutip. Contohnya:

'["20180505", "alantest"]'

Windows

Anda harus melampirkan parameter string JSON dalam tanda kutip ganda, dan karakter kutipan di dalam string harus didahului oleh \. Contohnya:

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

Pemecahan Masalah

Bagian berikut ini memberikan tips untuk memecahkan masalah umum dengan CLI Databricks warisan.

Menggunakan EOF dengan databricks configure tidak berfungsi

Untuk Databricks CLI 0.12.0 ke atas, menggunakan urutan akhir file (EOF) dalam skrip untuk meneruskan parameter ke databricks configure perintah tidak berfungsi. Misalnya, skrip berikut menyebabkan Databricks CLI mengabaikan parameter, dan tidak ada pesan kesalahan yang dilemparkan:

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

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

Untuk meperbaiki masalah ini, lakukan salah satu langkah berikut:

  • Gunakan salah satu opsi konfigurasi terprogram lainnya seperti yang dijelaskan dalam Siapkan autentikasi.
  • Tambahkan host dan token nilai secara manual ke file seperti yang .databrickscfg dijelaskan dalam Siapkan autentikasi.
  • Turun tingkat instalasi Cli Databricks Anda ke 0.11.0 atau di bawah, dan jalankan skrip Anda lagi.

Perintah CLI