Bagikan melalui


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:

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 .