Bagikan melalui


bundle grup perintah

Catatan

Informasi ini berlaku untuk Databricks CLI versi 0.218.0 ke atas. Untuk menemukan versi Databricks CLI Anda, jalankan databricks -v.

bundle Grup perintah dalam Databricks CLI memungkinkan Anda memvalidasi, menyebarkan, dan menjalankan alur kerja Azure Databricks secara terprogram seperti pekerjaan Azure Databricks, alur Tabel Langsung Delta, dan Tumpukan MLOps. Lihat Apa itu Bundel Aset Databricks?.

Penting

Untuk menginstal Databricks CLI, lihat Menginstal atau memperbarui Databricks CLI. Untuk mengonfigurasi autentikasi untuk Databricks CLI, lihat Autentikasi untuk Databricks CLI.

Anda menjalankan bundle perintah dengan menambahkannya ke databricks bundle. Untuk menampilkan bantuan untuk perintah, jalankan bundledatabricks bundle -h.

Membuat bundel dari templat proyek

Untuk membuat Bundel Aset Databricks dengan 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 dengan menggunakan templat Bundel Aset Databricks non-default, 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:

Menampilkan skema konfigurasi bundel

Untuk menampilkan skema konfigurasi Bundel Aset Databricks, jalankan bundle schema perintah, sebagai berikut:

databricks bundle schema

Untuk menghasilkan skema konfigurasi Bundel Aset Databricks sebagai file JSON, jalankan bundle schema perintah 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 mengeluarkan peringatan jika properti sumber daya ditentukan dalam file konfigurasi bundel yang tidak ditemukan dalam skema objek yang sesuai.

Menyinkronkan pohon bundel ke ruang kerja

bundle sync Gunakan perintah untuk melakukan sinkronisasi satu arah perubahan file bundel dalam direktori sistem file lokal, ke direktori dalam ruang kerja Azure Databricks jarak 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 sinkronisasi.

Membuat file konfigurasi bundel

Anda dapat menggunakan bundle generate perintah untuk menghasilkan konfigurasi sumber daya untuk pekerjaan atau alur yang sudah ada di ruang kerja Databricks Anda. Perintah ini menghasilkan *.yml file untuk pekerjaan atau alur di resources folder proyek bundel dan juga mengunduh buku catatan apa pun yang dirujuk dalam konfigurasi pekerjaan atau alur. Saat ini, hanya pekerjaan dengan tugas buku catatan yang didukung oleh perintah ini.

Penting

bundle generate Perintah disediakan sebagai kenyamanan untuk membuat konfigurasi sumber daya secara otomatis. Namun, ketika konfigurasi ini disertakan dalam bundel dan disebarkan, konfigurasi ini membuat sumber daya baru dan tidak memperbarui sumber daya yang ada kecuali bundle deployment bind telah terlebih dahulu digunakan pada sumber daya.

Jalankan bundle generate perintah sebagai berikut:

databricks bundle generate [job|pipeline] --existing-[job|pipeline]-id [job-id|pipeline-id]

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

Sumber daya bundel ikatan

Perintah ini 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 diperbarui berdasarkan konfigurasi yang ditentukan dalam bundel yang terikat setelah berikutnya bundle deploy.

Tip

Ada baiknya mengonfirmasi ruang kerja bundel sebelum menjalankan ikatan.

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 pada definisi pekerjaan dalam bundel diterapkan ke pekerjaan jarak jauh yang sesuai ketika bundel berikutnya disebarkan.

databricks bundle deployment bind hello_job 6565621249

Gunakan bundle deployment unbind jika Anda ingin menghapus tautan antara pekerjaan atau alur dalam bundel dan mitra jarak jauhnya di ruang kerja.

databricks bundle deployment unbind [resource-key]

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 -t opsi (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 root_path , properti adalah apa yang menentukan identitas unik bundel, yang default ke ~/.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 oleh ID mereka sebagai status yang disimpan dalam sistem file ruang kerja. Nama sumber daya tidak digunakan untuk berkorelasi antara penyebaran bundel dan instans sumber daya, 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 bundel

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 eksekusi validasi alur, gunakan opsi , seperti yang --validate-only diperlihatkan dalam contoh berikut:

databricks bundle run --validate-only my_pipeline

Untuk meneruskan parameter pekerjaan, gunakan --params opsi , diikuti oleh pasangan nilai kunci yang dipisahkan koma, di mana kuncinya 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 --params opsinya 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 --restart opsi :

databricks bundle run --restart hello_job

Menghancurkan bundel

Untuk menghapus pekerjaan, alur, dan artefak yang sebelumnya disebarkan, jalankan bundle destroy perintah . 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 .