Bagikan melalui


Pengembangan Bundel Aset Databricks

Artikel ini menjelaskan pengembangan dan siklus hidup Bundel Aset Databricks. Untuk informasi umum tentang Bundel Aset Databricks, lihat Apa itu Bundel Aset Databricks?.

Siklus hidup bundel

Untuk memahami cara menggunakan bundel secara efektif, Anda perlu memahami siklus hidup dasar bundel:

  1. Kerangka bundel dibuat berdasarkan proyek.
  2. Proyek bundel dikembangkan secara lokal. Bundel berisi file konfigurasi yang menentukan pengaturan infrastruktur dan ruang kerja seperti target penyebaran, pengaturan untuk sumber daya Databricks seperti pekerjaan dan alur, serta file sumber dan artefak lainnya.
  3. Proyek bundel divalidasi. Validasi memverifikasi pengaturan dan definisi sumber daya dalam konfigurasi bundel terhadap skema objek yang sesuai untuk memastikan bundel dapat disebarkan ke Databricks.
  4. Bundel disebarkan ke ruang kerja target. Umumnya bundel pertama kali disebarkan ke ruang kerja dev pribadi pengguna untuk pengujian. Setelah pengujian bundel selesai, bundel dapat disebarkan ke penahapan, lalu target produksi.
  5. Sumber daya alur kerja yang ditentukan dalam bundel yang disebarkan dapat dijalankan. Misalnya, Anda dapat menjalankan pekerjaan.
  6. Jika bundel tidak lagi digunakan, bundel dapat dihancurkan secara permanen.

Anda menggunakan perintah bundel Databricks CLI untuk membuat, memvalidasi, menyebarkan, menjalankan, dan menghancurkan bundel, seperti yang dijelaskan di bagian berikut.

Langkah 1: Membuat bundel

Ada tiga cara untuk mulai membuat bundel:

  1. Gunakan templat bundel default.
  2. Gunakan templat bundel kustom.
  3. Buat bundel secara manual.

Menggunakan templat bundel default

Untuk menggunakan templat bundel default Azure Databricks untuk membuat bundel pemula yang kemudian dapat Anda sesuaikan lebih lanjut, gunakan Databricks CLI versi 0.218.0 atau lebih tinggi untuk menjalankan bundle init perintah, yang memungkinkan Anda memilih dari daftar templat yang tersedia. Lihat Membuat bundel dari templat proyek.

databricks bundle init

Anda dapat melihat sumber untuk templat bundel default di repositori publik Github databricks/cli dan databricks/mlops-stacks .

Lewati ke Langkah 2: Isi file konfigurasi bundel.

Menggunakan templat bundel kustom

Untuk menggunakan templat bundel selain templat bundel default Azure Databricks, Anda harus mengetahui jalur lokal atau URL ke lokasi templat bundel jarak jauh. Gunakan Databricks CLI versi 0.218.0 atau lebih tinggi untuk menjalankan bundle init perintah sebagai berikut:

databricks bundle init <project-template-local-path-or-url>

Untuk informasi selengkapnya tentang perintah ini, lihat Templat proyek Bundel Aset Databricks. Untuk informasi tentang templat bundel tertentu, lihat dokumentasi penyedia templat bundel.

Lewati ke Langkah 2: Isi file konfigurasi bundel.

Membuat bundel secara manual

Untuk membuat bundel secara manual alih-alih menggunakan templat bundel, buat direktori proyek di komputer lokal Anda, atau repositori kosong dengan penyedia Git pihak ketiga.

Di direktori atau repositori Anda, buat satu atau beberapa file konfigurasi bundel sebagai input. File-file ini dinyatakan dalam format YAML. Harus ada minimal satu (dan hanya satu) file konfigurasi bundel bernama databricks.yml. File konfigurasi bundel tambahan harus dirujuk dalam include pemetaan databricks.yml file.

Untuk membuat file YAML dengan lebih mudah dan cepat yang sesuai dengan sintaks konfigurasi Bundel Aset Databricks, Anda dapat menggunakan alat seperti Visual Studio Code, PyCharm Professional, atau IntelliJ IDEA Ultimate yang menyediakan dukungan untuk file YAML dan file skema JSON, sebagai berikut:

Visual Studio Code

  1. Tambahkan dukungan server bahasa YAML ke Visual Studio Code, misalnya dengan menginstal ekstensi YAML dari Marketplace Visual Studio Code.

  2. Buat file skema JSON konfigurasi Bundel Aset Databricks menggunakan Databricks CLI versi 0.218.0 atau lebih tinggi untuk menjalankan bundle schemaperintah dan mengalihkan output ke file JSON. Misalnya, buat file bernama bundle_config_schema.json dalam direktori saat ini, sebagai berikut:

    databricks bundle schema > bundle_config_schema.json
    
  3. Gunakan Visual Studio Code untuk membuat atau membuka file konfigurasi bundel dalam direktori saat ini. File ini harus diberi nama databricks.yml.

  4. Tambahkan komentar berikut ke awal file konfigurasi bundel Anda:

    # yaml-language-server: $schema=bundle_config_schema.json
    

    Catatan

    Dalam komentar sebelumnya, jika file skema JSON konfigurasi Paket Aset Databricks Anda berada di jalur yang berbeda, ganti bundle_config_schema.json dengan jalur lengkap ke file skema Anda.

  5. Gunakan fitur server bahasa YAML yang Anda tambahkan sebelumnya. Untuk informasi selengkapnya, lihat dokumentasi server bahasa YAML Anda.

PyCharm Professional

  1. Buat file skema JSON konfigurasi Bundel Aset Databricks dengan menggunakan Databricks CLI versi 0.218.0 atau lebih tinggi untuk menjalankan bundle schemaperintah dan mengalihkan output ke file JSON. Misalnya, buat file bernama bundle_config_schema.json dalam direktori saat ini, sebagai berikut:

    databricks bundle schema > bundle_config_schema.json
    
  2. Konfigurasikan PyCharm untuk mengenali file skema JSON konfigurasi bundel, lalu selesaikan pemetaan skema JSON, dengan mengikuti instruksi dalam Mengonfigurasi skema JSON kustom.

  3. Gunakan PyCharm untuk membuat atau membuka file konfigurasi bundel. File ini harus diberi nama databricks.yml. Saat Anda mengetik, PyCharm memeriksa sintaks dan pemformatan skema JSON dan menyediakan petunjuk penyelesaian kode.

IntelliJ IDEA Ultimate

  1. Buat file skema JSON konfigurasi Bundel Aset Databricks dengan menggunakan Databricks CLI versi 0.218.0 atau lebih tinggi untuk menjalankan bundle schemaperintah dan mengalihkan output ke file JSON. Misalnya, buat file bernama bundle_config_schema.json dalam direktori saat ini, sebagai berikut:

    databricks bundle schema > bundle_config_schema.json
    
  2. Konfigurasikan IntelliJ IDEA untuk mengenali file skema JSON konfigurasi bundel, lalu selesaikan pemetaan skema JSON, dengan mengikuti instruksi dalam Mengonfigurasi skema JSON kustom.

  3. Gunakan IntelliJ IDEA untuk membuat atau membuka file konfigurasi bundel. File ini harus diberi nama databricks.yml. Saat Anda mengetik, IntelliJ IDEA memeriksa sintaks dan pemformatan skema JSON dan memberikan petunjuk penyelesaian kode.

Langkah 2: Mengisi file konfigurasi bundel

File konfigurasi bundel menentukan alur kerja Azure Databricks Anda dengan menentukan pengaturan seperti detail ruang kerja, nama artefak, lokasi file, detail pekerjaan, dan detail alur. Biasanya konfigurasi bundel juga berisi target pengembangan, penahapan, dan penyebaran produksi. Untuk informasi terperinci tentang file konfigurasi bundel, lihat Konfigurasi Bundel Aset Databricks.

Anda dapat menggunakan bundle generate perintah untuk membuat otomatis konfigurasi bundel untuk sumber daya yang ada di ruang kerja, lalu menggunakan bundle deployment bind untuk menautkan konfigurasi bundel ke sumber daya di ruang kerja agar tetap sinkron. Lihat Membuat file konfigurasi bundel dan Mengikat sumber daya bundel.

Langkah 3: Memvalidasi file konfigurasi bundel

Sebelum menyebarkan artefak atau menjalankan pekerjaan atau alur, Anda harus memverifikasi bahwa definisi dalam file konfigurasi bundel Anda valid. Untuk melakukan ini, jalankan bundle validate perintah dari direktori akar proyek bundel. Lihat Memvalidasi bundel.

databricks bundle validate

Jika validasi berhasil, ringkasan identitas bundel dan pesan konfirmasi dikembalikan. Untuk menghasilkan skema, gunakan databricks bundle schema perintah . Lihat Menampilkan skema konfigurasi bundel.

Langkah 4: Menyebarkan bundel

Sebelum Anda menyebarkan bundel, pastikan ruang kerja jarak jauh mengaktifkan file ruang kerja. Lihat Apa itu file ruang kerja?.

Untuk menyebarkan bundel ke ruang kerja jarak jauh, jalankan bundle deploy perintah dari akar bundel seperti yang dijelaskan dalam Menyebarkan bundel. Databricks CLI disebarkan ke ruang kerja target yang dideklarasikan dalam file konfigurasi bundel. Lihat target.

databricks bundle deploy

Identitas unik bundel ditentukan oleh nama, target, dan identitas penyebarnya. Jika atribut ini identik di berbagai bundel, penyebaran bundel ini akan mengganggu satu sama lain. Lihat Menyebarkan bundel untuk detail tambahan.

Tip

Anda dapat menjalankan databricks bundle perintah di luar root bundel dengan mengatur BUNDLE_ROOT variabel lingkungan. Jika variabel lingkungan ini tidak diatur, databricks bundle perintah mencoba menemukan akar bundel dengan mencari di dalam direktori kerja saat ini.

Langkah 5: Jalankan bundel

Untuk menjalankan pekerjaan atau alur tertentu, jalankan bundle run perintah dari akar bundel, menentukan pekerjaan atau kunci alur yang dideklarasikan dalam file konfigurasi bundel, seperti yang dijelaskan dalam Menjalankan pekerjaan atau alur. Kunci sumber daya adalah elemen tingkat atas dari blok YAML sumber daya. Jika Anda tidak menentukan pekerjaan atau kunci alur, Anda diminta untuk memilih sumber daya untuk dijalankan dari daftar sumber daya yang tersedia. -t Jika opsi tidak ditentukan, target default seperti yang dinyatakan dalam file konfigurasi bundel digunakan. Misalnya, untuk menjalankan pekerjaan dengan kunci hello_job dalam konteks target default:

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

Langkah 6: Hancurkan bundel

Peringatan

Menghancurkan bundel secara permanen menghapus pekerjaan, alur, dan artefak bundel yang sebelumnya disebarkan. Tindakan ini tidak dapat dibatalkan.

Jika Anda selesai dengan bundel dan ingin menghapus pekerjaan, alur, dan artefak yang sebelumnya disebarkan, jalankan bundle destroy perintah dari akar bundel. Perintah ini menghapus semua pekerjaan, alur, dan artefak yang disebarkan sebelumnya yang ditentukan dalam file konfigurasi bundel. Lihat Menghancurkan bundel.

databricks bundle destroy

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 .