bundle
grup perintah
Catatan
Informasi ini berlaku untuk Databricks CLI versi 0.205 ke atas. Databricks CLI sedang dalam Pratinjau Umum.
Penggunaan Databricks CLI tunduk pada Lisensi Databricks dan Pemberitahuan Privasi Databricks, termasuk ketentuan Data Penggunaan apa pun.
Grup perintah bundle
dalam Databricks CLI memungkinkan Anda memvalidasi, menyebarkan, dan menjalankan alur kerja Azure Databricks melalui program, seperti pekerjaan Azure Databricks , alur DLT , dan tumpukan MLOps . Lihat Apa itu Bundel Aset Databricks?.
Anda menjalankan bundle
perintah dengan menambahkannya ke databricks bundle
. Untuk menampilkan bantuan untuk perintah bundle
, jalankan databricks bundle -h
.
Membuat bundel dari templat proyek
Untuk membuat Bundel Aset Databricks menggunakan templat Bundel Aset Databricks default untuk Python, jalankan bundle init
perintah sebagai berikut, lalu jawab perintah di layar:
databricks bundle init
Untuk membuat Bundel Aset Databricks menggunakan templat Bundel Aset Databricks kustom, jalankan bundle init
perintah sebagai berikut:
databricks bundle init <project-template-local-path-or-url> \
--project-dir="</local/path/to/project/template/output>"
Lihat juga:
- Templat proyek Bundel Aset Databricks
- Mengembangkan pekerjaan di Azure Databricks menggunakan Bundel Aset Databricks
- Mengembangkan alur DLT dengan Bundel Aset Databricks
- Bundel Aset Databricks untuk Susunan MLOps
Tampilkan skema konfigurasi bundel
Untuk menampilkan skema konfigurasi bundel, jalankan perintah bundle schema
, sebagai berikut:
databricks bundle schema
Untuk menghasilkan skema konfigurasi Bundel Aset Databricks sebagai file JSON, jalankan perintah bundle schema
dan alihkan output ke file JSON. Misalnya, Anda dapat membuat file bernama bundle_config_schema.json
dalam direktori saat ini, sebagai berikut:
databricks bundle schema > bundle_config_schema.json
Memvalidasi bundel
Untuk memvalidasi bahwa file konfigurasi bundel Anda benar secara sinonis, jalankan bundle validate
perintah dari akar proyek bundel, sebagai berikut:
databricks bundle validate
Secara default perintah ini mengembalikan ringkasan identitas bundel:
Name: MyBundle
Target: dev
Workspace:
Host: https://my-host.cloud.databricks.com
User: someone@example.com
Path: /Users/someone@example.com/.bundle/MyBundle/dev
Validation OK!
Catatan
Perintah bundle validate
menghasilkan peringatan jika properti sumber daya ditentukan dalam file konfigurasi bundel yang tidak ditemukan dalam skema objek yang sesuai.
Jika Anda hanya ingin menghasilkan ringkasan identitas dan sumber daya bundel, gunakan bundle summary.
Sinkronisasi pohon bundel ke area kerja
Gunakan perintah bundle sync
untuk melakukan sinkronisasi satu arah dari perubahan file bundel di dalam direktori sistem berkas lokal ke direktori dalam ruang kerja Azure Databricks yang berlokasi jauh.
Catatan
bundle sync
perintah tidak dapat menyinkronkan perubahan file dari direktori dalam ruang kerja Azure Databricks jarak jauh, kembali ke direktori dalam sistem file lokal.
databricks bundle sync
perintah bekerja dengan cara yang sama seperti databricks sync
perintah dan disediakan sebagai kenyamanan produktivitas. Untuk informasi penggunaan perintah, lihat grup perintah sync
.
Membuat file konfigurasi bundel
Anda dapat menggunakan perintah bundle generate
untuk menghasilkan konfigurasi sumber daya untuk pekerjaan , alur , atau dasbor yang ada di ruang kerja Databricks Anda. Perintah ini menghasilkan berkas *.yml
untuk pekerjaan, alur, atau dasbor untuk folder resources
proyek bundel dan juga mengunduh berkas seperti notebook yang disebutkan dalam konfigurasi.
Menghasilkan konfigurasi pekerjaan atau alur
Penting
bundle generate
Perintah disediakan sebagai kenyamanan untuk membuat konfigurasi sumber daya secara otomatis. Namun, ketika konfigurasi pekerjaan atau alur ini disertakan dalam bundel dan disebarkan, ia membuat sumber daya baru dan tidak memperbarui sumber daya yang ada kecuali bundle deployment bind
telah terlebih dahulu digunakan. Lihat Kaitkan sumber daya bundel.
Untuk menghasilkan konfigurasi untuk pekerjaan atau alur, jalankan perintah bundle generate
sebagai berikut:
databricks bundle generate [job|pipeline] --existing-[job|pipeline]-id [job-id|pipeline-id]
Catatan
Saat ini, hanya pekerjaan dengan tugas buku catatan yang didukung oleh perintah ini.
Misalnya, perintah berikut menghasilkan file baru hello_job.yml
di resources
folder proyek bundel yang berisi YAML di bawah ini, dan mengunduh simple_notebook.py
ke src
folder proyek.
databricks bundle generate job --existing-job-id 6565621249
# This is the contents of the resulting hello_job.yml file.
resources:
jobs:
6565621249:
name: Hello Job
format: MULTI_TASK
tasks:
- task_key: run_notebook
existing_cluster_id: 0704-xxxxxx-yyyyyyy
notebook_task:
notebook_path: ./src/simple_notebook.py
source: WORKSPACE
run_if: ALL_SUCCESS
max_concurrent_runs: 1
Membuat konfigurasi dasbor
Untuk menghasilkan konfigurasi untuk dasbor yang ada di ruang kerja, jalankan bundle generate
, menentukan ID atau jalur ruang kerja untuk dasbor:
databricks bundle generate dashboard --existing-id [dashboard-id]
databricks bundle generate dashboard --existing-path [dashboard-workspace-path]
Anda dapat menyalin jalur ruang kerja untuk dasbor dari UI ruang kerja.
Misalnya, perintah berikut menghasilkan file baru baby_gender_by_county.dashboard.yml
di resources
folder proyek bundel yang berisi YAML di bawah ini, dan mengunduh baby_gender_by_county.lvdash.json
file ke src
folder proyek.
databricks bundle generate dashboard --existing-path "/Workspace/Users/someone@example.com/baby_gender_by_county.lvdash.json"
# This is the contents of the resulting baby_gender_by_county.dashboard.yml file.
resources:
dashboards:
baby_gender_by_county:
display_name: 'Baby gender by county'
warehouse_id: aae11o8e6fe9zz79
file_path: ../src/baby_gender_by_county.lvdash.json
Tip
Untuk memperbarui file .lvdash.json
setelah Anda menyebarkan dasbor, gunakan opsi --resource
saat Anda menjalankan bundle generate dashboard
untuk menghasilkan file tersebut untuk sumber daya dasbor yang ada. Untuk terus melakukan polling dan mengambil pembaruan untuk dasbor, gunakan opsi --force
dan --watch
.
Mengikat sumber daya bundel
Perintah bundle deployment bind
memungkinkan Anda menautkan pekerjaan dan alur yang ditentukan bundel ke pekerjaan dan alur yang ada di ruang kerja Azure Databricks sehingga dikelola oleh Bundel Aset Databricks. Jika Anda mengikat sumber daya, sumber daya Azure Databricks yang ada di ruang kerja akan diperbarui berdasarkan konfigurasi yang ditentukan dalam bundel yang terikat padanya setelah tindakan berikutnya bundle deploy
.
Kiat
Disarankan untuk mengonfirmasi bundel di ruang kerja sebelum menjalankan perintah bind.
databricks bundle deployment bind [resource-key] [resource-id]
Misalnya, perintah berikut mengikat sumber daya hello_job
ke mitra jarak jauhnya di ruang kerja. Perintah menghasilkan diff dan memungkinkan Anda menolak pengikatan sumber daya, tetapi jika dikonfirmasi, setiap pembaruan terhadap definisi pekerjaan dalam bundel akan diterapkan ke pekerjaan jarak jauh yang sesuai saat penyebaran bundel berikutnya.
databricks bundle deployment bind hello_job 6565621249
Gunakan bundle deployment unbind
jika Anda ingin menghapus tautan antara tugas atau alur kerja dalam bundel dengan mitra jarak jauh di ruang kerja.
databricks bundle deployment unbind [resource-key]
Mengeluarkan ringkasan bundel
Perintah bundle summary
menghasilkan ringkasan tentang identitas dan sumber daya bundle, termasuk tautan mendalam untuk sumber daya sehingga Anda dapat dengan mudah menavigasi sumber daya tersebut di ruang kerja Databricks.
databricks bundle summary
Contoh output berikut adalah ringkasan bundel bernama my_pipeline_bundle
yang menentukan pekerjaan dan alur:
Name: my_pipeline_bundle
Target: dev
Workspace:
Host: https://myworkspace.cloud.databricks.com
User: someone@example.com
Path: /Users/someone@example.com/.bundle/my_pipeline/dev
Resources:
Jobs:
my_project_job:
Name: [dev someone] my_project_job
URL: https://myworkspace.cloud.databricks.com/jobs/206000809187888?o=6051000018419999
Pipelines:
my_project_pipeline:
Name: [dev someone] my_project_pipeline
URL: https://myworkspace.cloud.databricks.com/pipelines/7f559fd5-zztz-47fa-aa5c-c6bf034b4f58?o=6051000018419999
Petunjuk
Anda juga dapat menggunakan bundle open
untuk menavigasi ke sumber daya di ruang kerja Databricks. Lihat Membuka sumber daya bundel.
Menyebarkan bundel
Untuk menyebarkan bundel ke ruang kerja jarak jauh, jalankan bundle deploy
perintah dari akar proyek bundel. Jika tidak ada opsi perintah yang ditentukan, target default seperti yang dinyatakan dalam file konfigurasi bundel digunakan.
databricks bundle deploy
Untuk menyebarkan bundel ke target tertentu, atur opsi -t
(atau --target
) bersama dengan nama target seperti yang dinyatakan dalam file konfigurasi bundel. Misalnya, untuk target yang dideklarasikan dengan nama dev
:
databricks bundle deploy -t dev
Bundel dapat disebarkan ke beberapa ruang kerja, seperti ruang kerja pengembangan, penahapan, dan produksi. Pada dasarnya, properti root_path
merupakan penentu identitas unik bundel, yang secara default adalah ~/.bundle/${bundle.name}/${bundle.target}
. Oleh karena itu secara default, identitas bundel terdiri dari identitas penyebar, nama bundel, dan nama target bundel. Jika ini identik di berbagai bundel, penyebaran bundel ini akan mengganggu satu sama lain.
Selain itu, penyebaran bundel melacak sumber daya yang dibuatnya di ruang kerja target berdasarkan ID mereka sebagai keadaan yang disimpan dalam sistem file ruang kerja. Nama sumberdaya tidak digunakan untuk menghubungkan antara penyebaran bundel dan instans sumberdaya, jadi:
- Jika sumber daya dalam konfigurasi bundel tidak ada di ruang kerja target, sumber daya tersebut dibuat.
- Jika sumber daya dalam konfigurasi bundel ada di ruang kerja target, sumber daya diperbarui di ruang kerja.
- Jika sumber daya dihapus dari konfigurasi bundel, sumber daya dihapus dari ruang kerja target jika sebelumnya disebarkan.
- Asosiasi sumber daya dengan bundel hanya dapat dilupakan jika Anda mengubah nama bundel, target bundel, atau ruang kerja. Anda dapat menjalankan
bundle validate
untuk menghasilkan ringkasan yang berisi nilai-nilai ini.
Menjalankan pekerjaan atau alur
Untuk menjalankan pekerjaan atau alur tertentu, gunakan bundle run
perintah . Anda harus menentukan kunci sumber daya pekerjaan atau alur yang dideklarasikan dalam file konfigurasi bundel. Secara default, lingkungan yang dideklarasikan dalam file konfigurasi bundel digunakan. Misalnya, untuk menjalankan pekerjaan hello_job
di lingkungan default, jalankan perintah berikut:
databricks bundle run hello_job
Untuk menjalankan pekerjaan dengan kunci hello_job
dalam konteks target yang dideklarasikan dengan nama dev
:
databricks bundle run -t dev hello_job
Jika Anda ingin melakukan validasi alur, gunakan opsi --validate-only
, seperti yang diperlihatkan dalam contoh berikut:
databricks bundle run --validate-only my_pipeline
Untuk meneruskan parameter pekerjaan dengan, gunakan opsi --params
, kemudian ikuti dengan pasangan kunci-nilai yang dipisahkan koma, di mana kunci tersebut adalah nama parameter. Misalnya, perintah berikut mengatur parameter dengan nama message
ke HelloWorld
untuk pekerjaan hello_job
:
databricks bundle run --params message=HelloWorld hello_job
Catatan
Anda dapat meneruskan parameter ke tugas pekerjaan menggunakan opsi tugas pekerjaan, tetapi opsi --params
adalah metode yang direkomendasikan untuk meneruskan parameter pekerjaan. Kesalahan terjadi jika parameter pekerjaan ditentukan untuk pekerjaan yang tidak memiliki parameter pekerjaan yang ditentukan atau jika parameter tugas ditentukan untuk pekerjaan yang memiliki parameter pekerjaan yang ditentukan.
Untuk membatalkan dan memulai ulang eksekusi pekerjaan atau pembaruan alur yang ada, gunakan opsi --restart
:
databricks bundle run --restart hello_job
Membuka sumber daya bundel
Untuk menavigasi ke sumber daya bundel di ruang kerja, jalankan bundle open
perintah dari akar proyek bundel, yang menentukan sumber daya yang akan dibuka. Jika kunci sumber daya tidak ditentukan, perintah ini menghasilkan daftar sumber daya bundel untuk dipilih.
databricks bundle open [resource-key]
Misalnya, perintah berikut meluncurkan browser dan menavigasi ke dasbor baby_gender_by_county di bundel di ruang kerja Databricks yang telah dikonfigurasi untuk paket tersebut:
databricks bundle open baby_gender_by_county
Menghancurkan bundel
Peringatan
Menghapus bundel secara permanen akan menghapus pekerjaan yang telah dideploy, alur, dan artefak dari bundel tersebut. Tindakan ini tidak dapat dibatalkan.
Untuk menghapus pekerjaan, alur, dan artefak yang sebelumnya disebarkan, jalankan perintah bundle destroy
. Perintah berikut menghapus semua pekerjaan, alur, dan artefak yang disebarkan sebelumnya yang ditentukan dalam file konfigurasi bundel:
databricks bundle destroy
Catatan
Identitas bundel terdiri dari nama bundel, target bundel, dan ruang kerja. Jika Anda telah mengubah salah satu dari ini dan kemudian mencoba menghancurkan bundel sebelum penyebaran, kesalahan akan terjadi.
Secara default, Anda diminta untuk mengonfirmasi penghapusan permanen pekerjaan, alur, dan artefak yang disebarkan sebelumnya. Untuk melewati perintah ini dan melakukan penghapusan permanen otomatis, tambahkan --auto-approve
opsi ke bundle destroy
perintah .