Bagikan melalui


Apa itu Bundel Aset Databricks?

Bundel Aset Databricks (DAB) adalah alat untuk memfasilitasi adopsi praktik terbaik rekayasa perangkat lunak, termasuk kontrol sumber, peninjauan kode, pengujian, dan integrasi dan pengiriman berkelanjutan (CI/CD), untuk proyek data dan AI Anda. Bundel memungkinkan untuk menjelaskan sumber daya Databricks seperti pekerjaan, alur, dan buku catatan sebagai file sumber. File sumber ini menyediakan definisi menyeluruh dari suatu proyek, termasuk bagaimana harus disusun, diuji, dan disebarkan, yang membuatnya lebih mudah untuk berkolaborasi pada proyek selama pengembangan aktif.

Bundel menyediakan cara untuk menyertakan metadata bersama file sumber proyek Anda. Saat Anda menyebarkan proyek menggunakan bundel, metadata ini digunakan untuk menyediakan infrastruktur dan sumber daya lainnya. Kumpulan file sumber dan metadata proyek Anda kemudian disebarkan sebagai satu bundel ke lingkungan target Anda. Bundel mencakup bagian-bagian berikut:

  • Infrastruktur cloud dan konfigurasi ruang kerja yang diperlukan
  • File sumber, seperti buku catatan dan file Python, yang menyertakan logika bisnis
  • Definisi dan pengaturan untuk sumber daya Databricks, seperti pekerjaan Azure Databricks, alur pipa DLT, titik akhir Model Serving, Eksperimen MLflow, dan model MLflow yang terdaftar.
  • Pengujian unit dan pengujian integrasi

Diagram berikut menyediakan tampilan tingkat tinggi dari pengembangan dan alur CI/CD dengan bundel:

Ringkasan Bundel Aset Databricks

Kapan saya harus menggunakan Bundel Aset Databricks?

Bundel Aset Databricks adalah pendekatan infrastruktur sebagai kode (IaC) untuk mengelola proyek Databricks Anda. Gunakan saat Anda ingin mengelola proyek kompleks di mana beberapa kontributor dan otomatisasi sangat penting, dan integrasi dan penyebaran berkelanjutan (CI/CD) adalah persyaratan. Karena bundel didefinisikan dan dikelola melalui templat dan file YAML yang Anda buat dan pertahankan bersama kode sumber, bundel ini terpetakan dengan baik ke skenario di mana IaC merupakan pendekatan yang tepat.

Beberapa skenario ideal untuk bundel meliputi:

  • Mengembangkan proyek data, analitik, dan ML di lingkungan berbasis tim. Bundel dapat membantu Anda mengatur dan mengelola berbagai file sumber secara efisien. Ini memastikan kolaborasi yang lancar dan proses yang disederhanakan.
  • Mempercepat iterasi pada masalah ML. Kelola sumber daya alur ML (seperti pelatihan dan pekerjaan inferensi batch) dengan menggunakan proyek ML yang mengikuti praktik terbaik produksi dari awal.
  • Atur standar organisasi untuk proyek baru dengan menulis templat bundel kustom yang mencakup izin default, perwakilan layanan, dan konfigurasi CI/CD.
  • Kepatuhan terhadap peraturan: Dalam industri di mana kepatuhan terhadap peraturan adalah perhatian utama, bundel dapat membantu mempertahankan riwayat versi dari pekerjaan kode dan infrastruktur. Ini membantu dalam tata kelola dan memastikan bahwa standar kepatuhan yang diperlukan terpenuhi.

Bagaimana cara kerja Bundel Aset Databricks?

Metadata bundel didefinisikan menggunakan file YAML yang menentukan artefak, sumber daya, dan konfigurasi proyek Databricks. Anda dapat membuat file YAML ini secara manual atau membuatnya menggunakan templat bundel. Databricks CLI kemudian dapat digunakan untuk memvalidasi, menyebarkan, dan menjalankan bundel menggunakan file YAML bundel ini. Anda dapat menjalankan proyek bundel dari IDEs, terminal, atau dalam Databricks secara langsung. Artikel ini menggunakan Databricks CLI.

Bundel dapat dibuat secara manual atau berdasarkan templat. Databricks CLI menyediakan templat default untuk kasus penggunaan sederhana, tetapi untuk pekerjaan yang lebih spesifik atau kompleks, Anda dapat membuat templat bundel kustom untuk mengimplementasikan praktik terbaik tim Anda dan menjaga konfigurasi umum tetap konsisten.

Untuk detail selengkapnya tentang KONFIGURASI YAML yang digunakan untuk mengekspresikan Bundel Aset Databricks, lihat Konfigurasi Bundel Aset Databricks.

Mengonfigurasi lingkungan Anda untuk menggunakan paket

Anda menggunakan Databricks CLI untuk menyebarkan bundel dari baris perintah. Untuk menginstal Databricks CLI, lihat Menginstal atau memperbarui Databricks CLI.

Bundel Aset Databricks tersedia di Databricks CLI versi 0.218.0 atau lebih tinggi. Untuk menemukan versi Databricks CLI yang diinstal, jalankan perintah berikut:

databricks --version

Setelah menginstal Databricks CLI, verifikasi bahwa ruang kerja Databricks jarak jauh Anda dikonfigurasi dengan benar. Paket mengharuskan fitur berkas ruang kerja diaktifkan. Jika Anda menggunakan Databricks Runtime versi 11.3 LTS atau lebih tinggi, fitur ini diaktifkan secara default.

Autentikasi

Azure Databricks menyediakan beberapa metode autentikasi:

  • Untuk skenario autentikasi yang memerlukan interaksi pengguna, seperti alur kerja manual di mana Anda menggunakan browser web Anda untuk masuk ke ruang kerja Azure Databricks target (saat diminta oleh Databricks CLI), gunakan autentikasi OAuth pengguna-ke-mesin (U2M). Metode ini sangat ideal untuk bereksperimen dengan panduan memulai untuk Bundel Aset Databricks atau untuk pengembangan bundel yang cepat.
  • Untuk skenario autentikasi tanpa pengawasan, seperti alur kerja otomatis sepenuhnya di mana tidak ada kesempatan bagi Anda untuk menggunakan browser web Anda untuk masuk ke ruang kerja Azure Databricks target Anda pada saat itu, gunakan autentikasi mesin-ke-mesin (M2M) OAuth. Metode ini memerlukan penggunaan perwakilan layanan Azure Databricks dan ideal untuk menggunakan Bundel Aset Databricks dengan sistem CI/CD seperti GitHub.

Untuk autentikasi OAuth U2M, lakukan hal berikut:

  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 digantikan dengan informasi yang 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.

Anda dapat menggunakan nama profil konfigurasi ini dalam satu atau beberapa cara berikut setiap kali Anda memvalidasi, menyebarkan, menjalankan, atau menghancurkan bundel:

  • Dengan pilihan baris perintah -p <profile-name> yang ditambahkan ke perintah databricks bundle validate, databricks bundle deploy, databricks bundle run, atau databricks bundle destroy. Lihat Pengembangan Bundel Aset Databricks.
  • Sebagai nilai pemetaan profile dalam pemetaan workspace tingkat atas file konfigurasi bundel (meskipun Databricks menyarankan Anda menggunakan pemetaan host yang diatur ke URL ruang kerja Azure Databricks alih-alih pemetaan profile, karena membuat file konfigurasi bundel Anda lebih portabel). Lihat cakupan profile pemetaan di ruang kerja.
  • Jika nama profil konfigurasi adalah DEFAULT, maka secara default digunakan ketika opsi baris perintah -p <profile-name> atau pemetaan profile (atau host) tidak ditentukan.

Untuk autentikasi M2M OAuth, lakukan hal berikut:

  1. Selesaikan instruksi penyiapan autentikasi M2M OAuth. Lihat Mengotorisasi akses tanpa pengawasan ke sumber daya Azure Databricks dengan perwakilan layanan menggunakan OAuth.

  2. Instal Databricks CLI pada sumber daya komputasi target dengan salah satu cara berikut:

    • Untuk menginstal Databricks CLI secara manual pada sumber daya komputasi secara real time, lihat Menginstal atau memperbarui Databricks CLI.
    • Untuk menggunakan GitHub Actions untuk menginstal Databricks CLI secara otomatis pada komputer virtual GitHub, lihat setup-cli di GitHub.
    • Untuk menggunakan sistem CI/CD lainnya untuk menginstal Databricks CLI secara otomatis pada komputer virtual, lihat dokumentasi penyedia sistem CI/CD Anda dan Menginstal atau memperbarui Databricks CLI.
  3. Atur variabel lingkungan berikut pada sumber daya komputasi sebagai berikut:

    • DATABRICKS_HOST, tetapkan ke URL Azure Databricks untuk masing-masing ruang kerja, misalnya https://adb-1234567890123456.7.azuredatabricks.net.
    • Tetapkan DATABRICKS_CLIENT_ID ke nilai ID Aplikasi dari perwakilan layanan Azure Databricks.
    • DATABRICKS_CLIENT_SECRET, atur ke nilai Rahasia OAuth untuk perwakilan layanan Azure Databricks.

    Untuk mengatur variabel lingkungan ini, lihat dokumentasi untuk sistem operasi sumber daya komputasi target atau sistem CI/CD Anda.

Mengembangkan Bundel Aset Databricks pertama Anda

Cara tercepat untuk memulai pengembangan bundel adalah dengan menggunakan templat proyek bundel. Buat proyek bundel pertama Anda menggunakan perintah init bundel Databricks CLI. Perintah ini menyajikan pilihan templat bundel default yang disediakan Databricks dan mengajukan serangkaian pertanyaan untuk menginisialisasi variabel proyek.

databricks bundle init

Membuat bundel Anda adalah langkah pertama dalam siklus hidup bundel. Langkah kedua adalah mengembangkan bundel Anda, di mana elemen kunci adalah menetapkan pengaturan bundel dan sumber daya dalam file databricks.yml dan file konfigurasi sumber daya. Untuk informasi tentang konfigurasi bundel, lihat Databricks Asset Bundle configuration.

Petunjuk

Contoh konfigurasi bundel dapat ditemukan dalam contoh konfigurasi Bundel dan repositori contoh Bundel di GitHub.

Langkah berikutnya