Membangun pekerjaan dengan Bundel Otomatisasi Deklaratif

Bundel Otomatisasi Deklaratif (sebelumnya dikenal sebagai Bundel Aset Databricks), berisi artefak yang ingin Anda sebarkan dan pengaturan untuk sumber daya Azure Databricks seperti pekerjaan yang ingin Anda jalankan, dan memungkinkan Anda memvalidasi, menyebarkan, dan menjalankannya secara terprogram. Lihat Apa itu Bundel Otomatisasi Deklaratif?.

Halaman ini menjelaskan cara membuat bundel untuk mengelola pekerjaan secara terprogram. Lihat Pekerjaan Lakeflow. Bundel dibuat menggunakan templat bundel default bagi Python dari Bundel Otomatisasi Deklaratif, yang terdiri dari notebook dan definisi pekerjaan untuk menjalankannya. Anda kemudian memvalidasi, menyebarkan, dan menjalankan pekerjaan yang disebarkan di ruang kerja Azure Databricks Anda.

Petunjuk

Jika Anda memiliki pekerjaan yang sudah ada yang dibuat menggunakan antarmuka pengguna atau API Lakeflow Jobs yang ingin Anda pindahkan ke bundel, Anda harus menentukannya dalam file konfigurasi bundel. Databricks merekomendasikan agar Anda terlebih dahulu membuat bundel menggunakan langkah-langkah di bawah ini lalu memvalidasi apakah bundel berfungsi. Anda kemudian dapat menambahkan definisi pekerjaan tambahan, notebook, dan sumber lain ke bundel. Lihat Mengambil definisi pekerjaan yang sudah ada menggunakan UI.

Jika Anda ingin membuat bundel dari awal, lihat Membuat bundel secara manual.

Persyaratan

  • Databricks CLI versi 0.218.0 atau lebih tinggi. Untuk memeriksa versi Databricks CLI yang diinstal, jalankan perintah databricks -v. Untuk menginstal Databricks CLI, lihat Menginstal atau memperbarui Databricks CLI.
  • uv diperlukan untuk menjalankan pengujian dan untuk menginstal dependensi untuk proyek ini dari IDE.
  • Ruang kerja Databricks jarak jauh harus memiliki file ruang kerja yang diaktifkan. Lihat Apa itu file ruang kerja?.
  • Katalog yang sudah ada. Untuk membuat katalog, lihat Membuat katalog.

Langkah 1: Menyiapkan autentikasi

Pertama, siapkan autentikasi antara Databricks CLI di komputer pengembangan Anda dan ruang kerja Azure Databricks Anda. Halaman ini mengasumsikan bahwa Anda ingin menggunakan autentikasi pengguna-ke-mesin (U2M) OAuth dan profil konfigurasi Azure Databricks terkait bernama DEFAULT untuk autentikasi.

Catatan

Autentikasi U2M sesuai untuk mencoba langkah-langkah ini secara real time. Untuk alur kerja yang sepenuhnya otomatis, Databricks menyarankan agar Anda menggunakan autentikasi mesin-ke-mesin (M2M) OAuth sebagai gantinya. Lihat instruksi penyiapan autentikasi M2M di Mengotorisasi akses perwakilan layanan ke Azure Databricks dengan OAuth.

  1. Gunakan Databricks CLI untuk memulai manajemen token OAuth secara lokal dengan menjalankan perintah berikut untuk setiap ruang kerja target.

    Dalam perintah berikut, ganti <workspace-url> dengan URL per ruang kerja Azure Databricks Anda, misalnya https://adb-1234567890123456.7.azuredatabricks.net.

    databricks auth login --host <workspace-url>
    
  2. Databricks CLI meminta Anda untuk menyimpan informasi yang Anda masukkan sebagai profil konfigurasi Azure Databricks. Tekan Enter untuk menerima nama profil yang disarankan, atau masukkan nama profil baru atau yang sudah ada. Profil yang sudah ada dengan nama yang sama akan ditimpa dengan informasi yang telah Anda masukkan. Anda dapat menggunakan profil untuk mengalihkan konteks autentikasi dengan cepat di beberapa ruang kerja.

    Untuk mendapatkan daftar profil yang ada, di terminal atau prompt perintah terpisah, gunakan Databricks CLI untuk menjalankan perintah databricks auth profiles. Untuk melihat pengaturan profil tertentu yang sudah ada, jalankan perintah databricks auth env --profile <profile-name>.

  3. Di browser web Anda, selesaikan instruksi di layar untuk masuk ke ruang kerja Azure Databricks Anda.

  4. Untuk melihat nilai token OAuth profil saat ini dan tanda waktu kedaluwarsa token yang akan datang, jalankan salah satu perintah berikut:

    • databricks auth token --host <workspace-url>
    • databricks auth token -p <profile-name>
    • databricks auth token --host <workspace-url> -p <profile-name>

    Jika Anda memiliki beberapa profil dengan nilai yang sama --host , Anda mungkin perlu menentukan --host opsi dan -p bersama-sama untuk membantu Databricks CLI menemukan informasi token OAuth yang cocok dengan benar.

Langkah 2: Menginisialisasi bundel

Menginisialisasi bundel menggunakan templat proyek bundel Python default.

  1. Gunakan terminal atau perintah Anda untuk beralih ke direktori pada komputer pengembangan lokal Anda yang akan berisi bundel templat yang dihasilkan.

  2. Gunakan Databricks CLI untuk menjalankan bundle init perintah:

    databricks bundle init
    
  3. Untuk Template to use, biarkan nilai default-python default dengan menekan Enter.

  4. Untuk Unique name for this project, biarkan nilai my_projectdefault , atau ketik nilai yang berbeda, lalu tekan Enter. Ini menentukan nama direktori akar untuk bundel ini. Direktori akar ini dibuat di direktori kerja Anda saat ini.

  5. Untuk Include a job that runs a notebook, pilih yes dan tekan Enter.

  6. Untuk Include an ETL pipeline, pilih no dan tekan Enter.

  7. Untuk Include a stub (sample) Python package, pilih no dan tekan Enter.

  8. Untuk Use serverless, pilih yes dan tekan Enter. Ini menginstruksikan Databricks CLI untuk mengonfigurasi bundel Anda agar berjalan pada komputasi tanpa server.

  9. Untuk Default catalog for any tables created by this project [hive_metastore], masukkan nama katalog Unity Catalog yang sudah ada.

  10. Untuk Use a personal schema for each user working on this project., pilih yes.

Langkah 3: Jelajahi bundel

Untuk melihat file yang dihasilkan templat, beralihlah ke direktori akar bundel yang baru Dibuat. File yang menarik meliputi yang berikut ini:

  • databricks.yml: File ini menentukan nama terprogram bundel, termasuk referensi ke file bundel, menentukan variabel katalog dan skema, dan menentukan pengaturan untuk ruang kerja target.
  • resources/sample_job.job.yml: File ini menentukan pengaturan pekerjaan, termasuk tugas buku catatan default. Untuk informasi tentang pengaturan pekerjaan, lihat pekerjaan.
  • src/: Folder ini berisi file sumber pekerjaan.
  • src/sample_notebook.ipynb: Notebook ini membaca tabel sampel.
  • tests/: Folder ini berisi pengujian unit sampel.
  • README.md: File ini berisi informasi tambahan tentang memulai dan menggunakan templat bundel ini.

Petunjuk

Anda dapat menentukan, menggabungkan, dan mengambil alih pengaturan untuk kluster pekerjaan baru dalam bundel dengan menggunakan teknik yang dijelaskan dalam Mengambil alih dengan pengaturan target.

Langkah 4: Memvalidasi konfigurasi bundel

Sekarang periksa apakah konfigurasi bundel valid.

  1. Dari direktori akar, gunakan Databricks CLI untuk menjalankan bundle validate perintah:

    databricks bundle validate
    
  2. Jika ringkasan konfigurasi bundel dikembalikan, maka validasi berhasil. Jika ada kesalahan yang dikembalikan, perbaiki kesalahan, lalu ulangi langkah ini.

Langkah 5: Sebarkan bundel ke ruang kerja jarak jauh

Selanjutnya, sebarkan pekerjaan ke ruang kerja Azure Databricks jarak jauh Anda dan verifikasi pekerjaan dalam ruang kerja Anda.

  1. Dari akar bundel, gunakan Databricks CLI untuk menjalankan perintah bundle deploy.

    databricks bundle deploy --target dev
    
  2. Konfirmasikan bahwa buku catatan telah disebarkan:

    1. Di bilah samping ruang kerja Azure Databricks Anda, klik Ruang Kerja.
    2. Klik ke folder Users ><your-username>> .bundle ><project-name>> dev > files > src. Buku catatan harus berada di folder ini.
  3. Periksa apakah tugas telah dibuat:

    1. Di bilah sisi ruang kerja Azure Databricks Anda, klik Tugas & Pipeline.
    2. Secara opsional, pilih filter Pekerjaan dan Dimiliki oleh saya .
    3. Klik [dev <your-username>] sample_job.
    4. Klik tab Tugas. Seharusnya ada satu notebook_task.

Jika Anda membuat perubahan pada bundel setelah langkah ini, Anda harus mengulangi langkah 4-5 untuk memeriksa apakah konfigurasi bundel Anda masih valid lalu menyebarkan ulang proyek.

Langkah 6: Jalankan tugas yang telah diterapkan

Sekarang picu eksekusi pekerjaan di ruang kerja Anda dari baris perintah.

  1. Dari direktori akar, gunakan Databricks CLI untuk menjalankan bundle run perintah:

    databricks bundle run --target dev sample_job
    
  2. Salin nilai Run URL yang muncul di terminal Anda dan tempelkan nilai ini ke browser web Anda untuk membuka ruang kerja Azure Databricks Anda. Lihat Menampilkan dan menjalankan pekerjaan yang dibuat dengan Bundel Otomatisasi Deklaratif

  3. Di ruang kerja Azure Databricks Anda, setelah tugas pekerjaan berhasil diselesaikan dan memperlihatkan bilah judul hijau, klik tugas pekerjaan untuk melihat hasilnya.

Jika Anda membuat perubahan pada bundel setelah langkah ini, Anda harus mengulangi langkah 4-6 untuk memeriksa apakah konfigurasi bundel Anda masih valid, menyebarkan ulang proyek, dan menjalankan proyek yang disebarkan ulang.

Langkah 7: Jalankan pengujian

Terakhir, gunakan pytest untuk menjalankan pengujian secara lokal:

uv run pytest

Langkah 8: Bersihkan

Dalam langkah ini, Anda menghapus buku catatan dan proyek yang telah diterapkan dari ruang kerja Anda.

  1. Dari direktori akar, gunakan Databricks CLI untuk menjalankan bundle destroy perintah:

    databricks bundle destroy --target dev
    
  2. Ketika diminta untuk menghapus secara permanen semua file dan direktori ruang kerja, ketik y dan tekan Enter.

  3. Jika Anda juga ingin menghapus bundel dari komputer pengembangan, Anda sekarang dapat menghapus direktori proyek lokal.