Menjalankan CLI (warisan)
Penting
Dokumentasi ini telah dihentikan dan mungkin tidak diperbarui.
Informasi ini berlaku untuk CLI Databricks warisan versi 0.18 ke bawah. Databricks merekomendasikan agar Anda menggunakan Databricks CLI versi 0.205 atau lebih baru. Lihat Apa itu Databricks CLI?. Untuk menemukan versi Databricks CLI Anda, jalankan databricks -v
.
Untuk bermigrasi dari Databricks CLI versi 0.18 atau di bawahnya ke Databricks CLI versi 0.205 atau lebih tinggi, lihat migrasi CLI Databricks.
Anda menjalankan subperintah CLI eksekusi pekerjaan Databricks dengan menambahkannya ke databricks runs
dan subperintah CLI pekerjaan Databricks dengan menambahkannya ke databricks jobs
. Untuk sub-perintah CLI pekerjaan Databricks, lihat CLI Pekerjaan (warisan). Bersama-sama, sub-perintah ini memanggil JOBS API dan Jobs API 2.0.
Penting
CLI eksekusi pekerjaan Databricks mendukung panggilan terhadap dua versi REST API Pekerjaan Databricks: versi 2.1 dan 2.0. (Fungsionalitas eksekusi pekerjaan adalah bagian dari Rest API Pekerjaan.) Versi 2.1 menambahkan dukungan untuk orkestrasi pekerjaan dengan beberapa tugas; lihat Menjadwalkan dan mengatur alur kerja dan Memperbarui dari Jobs API 2.0 ke 2.1. Databricks merekomendasikan agar Anda memanggil versi 2.1, kecuali jika Anda memiliki skrip warisan yang mengandalkan versi 2.0 dan tidak dapat dimigrasikan.
Kecuali ada ketentuan lain, perilaku terprogram yang dijelaskan dalam artikel ini berlaku baik untuk versi 2.1 maupun 2.0.
Catatan
Jika Anda menerima kesalahan 500 tingkat saat membuat permintaan CLI eksekusi pekerjaan, Databricks merekomendasikan agar Anda mencoba kembali permintaan hingga 10 menit (dengan interval minimum selama 30 detik antara percobaan ulang yang dilakukan).
Persyaratan untuk memanggil REST API Pekerjaan 2.1
Untuk menyiapkan CLI eksekusi pekerjaan Databricks (dan CLI pekerjaan) guna memanggil REST API Pekerjaan 2.1, lakukan hal berikut:
Perbarui CLI ke versi 0.16.0 atau ke versi yang lebih tinggi.
Lakukan salah satu hal berikut ini:
- Jalankan perintah
databricks jobs configure --version=2.1
. Perintah ini menambahkan pengaturanjobs-api-version = 2.1
ke file~/.databrickscfg
di Unix, Linux, atau macOS, atau%USERPROFILE%\.databrickscfg
di Windows. Semua subperintah CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.1 secara default. - Tambahkan pengaturan
jobs-api-version = 2.1
secara manual ke file~/.databrickscfg
di Unix, Linux, atau macOS, atau%USERPROFILE%\.databrickscfg
di Windows. Semua subperintah CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.1 secara default. - Tambahkan opsi
--version=2.1
(misalnya,databricks runs list --version=2.1
) untuk menginstruksikan agar CLI eksekusi pekerjaan memanggil REST API Pekerjaan 2.1 hanya untuk panggilan tersebut.
Jika Anda tidak melakukan tindakan sebelumnya, CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.0 secara default.
- Jalankan perintah
Persyaratan untuk memanggil REST API Pekerjaan 2.0
Untuk menyiapkan CLI eksekusi pekerjaan Databricks (dan CLI pekerjaan) untuk memanggil REST API Pekerjaan 2.0, lakukan salah satu dari beberapa hal berikut:
- Gunakan versi CLI Databricks di bawah versi 0.16.0, atau
- Perbarui CLI ke versi 0.16.0 atau yang lebih baru, lalu lakukan salah satu hal berikut ini:
- Jalankan perintah
databricks jobs configure --version=2.0
. Perintah ini menambahkan pengaturanjobs-api-version = 2.0
ke file~/.databrickscfg
di Unix, Linux, atau macOS, atau%USERPROFILE%\.databrickscfg
di Windows. Semua subperintah CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.0 secara default. - Tambahkan pengaturan
jobs-api-version = 2.0
secara manual ke file~/.databrickscfg
di Unix, Linux, atau macOS, atau%USERPROFILE%\.databrickscfg
di Windows. Semua subperintah CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.0 secara default. - Tambahkan opsi
--version=2.1
(misalnya,databricks runs list --version=2.0
) untuk menginstruksikan agar CLI eksekusi pekerjaan memanggil REST API Pekerjaan 2.0 hanya untuk panggilan tersebut.
- Jalankan perintah
Jika Anda tidak melakukan tindakan sebelumnya, CLI eksekusi pekerjaan (dan CLI pekerjaan) akan memanggil REST API Pekerjaan 2.0 secara default.
Subperintah dan penggunaan umum
databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs runs.
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:
cancel Cancels the specified run.
get Gets the metadata about a run in JSON form.
get-output Gets the output of a run.
list Lists job runs.
submit Submits a one-time run.
Membatalkan eksekusi
Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs cancel --help
.
databricks runs cancel --run-id 119
{}
Mendapatkan informasi mengenai eksekusi
Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs get --help
.
Penggunaan umum
databricks runs get --run-id 2785782
Catatan penggunaan dan contoh respons CLI Pekerjaan 2.1
Lihat Menjalankan get di Memperbarui dari Jobs API 2.0 ke 2.1.
Contoh respons CLI Pekerjaan 2.0
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
}
Mendapatkan output eksekusi
Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs get-output --help
.
Catatan
Saat notebook_task
menampilkan nilai dari panggilan ke dbutils.notebook.exit()
, Databricks membatasi nilai yang ditampilkan ke 5 MB data pertama. Untuk menampilkan hasil yang lebih besar, Anda dapat menyimpan hasil pekerjaan di layanan penyimpanan cloud.
Penggunaan umum
databricks runs get-output --run-id 2785782
Catatan penggunaan CLI Pekerjaan 2.1
Lihat Menjalankan mendapatkan output dalam Memperbarui dari Jobs API 2.0 ke 2.1.
Contoh respons CLI Pekerjaan 2.0
{
"metadata": {
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
"notebook_output": {}
}
Mendapatkan informasi mengenai semua eksekusi
Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs list --help
.
Penggunaan umum
databricks runs list --output JSON
Catatan penggunaan dan contoh respons CLI Pekerjaan 2.1
Lihat Daftar eksekusi di Memperbarui dari Jobs API 2.0 ke 2.1.
Contoh respons CLI Pekerjaan 2.0
{
"runs": [
{
"job_id": 1269263,
"run_id": 2785782,
"number_in_job": 1111,
"original_attempt_run_id": 2785782,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1620947196985,
"setup_duration": 36000,
"execution_duration": 119000,
"cleanup_duration": 3000,
"end_time": 1620947355499,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://adb-1234567890123456.7.azuredatabricks.net/?o=1234567890123456#job/1269263/run/1111",
"run_type": "JOB_RUN",
"attempt_number": 0
},
...
],
"has_more": false
}
Jika has_more
menampilkan true
, ada informasi mengenai eksekusi tambahan. Gunakan opsi --offset
untuk menampilkan informasi mengenai eksekusi yang berhubungan dengan eksekusi terbaru. Misalnya, untuk menampilkan informasi dimulai dari sepuluh eksekusi terbaru, tentukan --offset 10
.
Gunakan opsi --limit
untuk menampilkan informasi mengenai jumlah tetap eksekusi. Misalnya, untuk menampilkan informasi hingga 5 eksekusi berikutnya, tentukan --limit 5
. Anda dapat menentukan maksimal 1000 eksekusi. Jika tidak ditentukan, jumlah defaultnya adalah 20.
Mengirimkan eksekusi satu kali
Untuk menampilkan dokumentasi penggunaan, jalankan databricks runs submit --help
.
Penggunaan umum
databricks runs submit --json-file submit-run.json
Catatan penggunaan REST API Pekerjaan 2.1 dan contoh permintaan
Lihat Menjalankan pengiriman dalam Memperbarui dari Jobs API 2.0 ke 2.1.
Contoh permintaan dan respons REST API Pekerjaan 2.0
submit-run.json
:
{
"run_name": "my-spark-run",
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"node_type_id": "Standard_F16s",
"enable_elastic_disk": true,
"azure_attributes": {
"availability": "ON_DEMAND_AZURE"
},
"num_workers": 8
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
{
"run_id": 123
}