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 Tabel Langsung Delta, titik akhir Penyajian Model, Eksperimen MLflow, dan model terdaftar MLflow
- Pengujian unit dan pengujian integrasi
Diagram berikut menyediakan tampilan tingkat tinggi dari pengembangan dan alur CI/CD dengan bundel:
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, mereka memetakan dengan baik ke skenario di mana IaC adalah pendekatan yang sesuai.
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.
- Iterasi masalah ML lebih cepat. 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 menjadi perhatian yang signifikan, bundel dapat membantu mempertahankan riwayat kode dan pekerjaan infrastruktur versi. 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 bundel
Gunakan Databricks CLI untuk menyebarkan bundel dengan mudah 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. Bundel mengharuskan fitur file ruang kerja diaktifkan karena fitur ini mendukung bekerja dengan file selain Databricks Notebooks, seperti .py
dan .yml
file. 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 dihadiri , seperti alur kerja manual tempat Anda menggunakan browser web untuk masuk ke ruang kerja Azure Databricks target Anda (saat diminta oleh Databricks CLI), gunakan autentikasi pengguna-ke-mesin (U2M) OAuth. Metode ini sangat ideal untuk bereksperimen dengan tutorial 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:
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, misalnyahttps://adb-1234567890123456.7.azuredatabricks.net
.databricks auth login --host <workspace-url>
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 ada dengan nama yang sama ditimpa 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 perintahdatabricks auth env --profile <profile-name>
.Di browser web Anda, selesaikan instruksi di layar untuk masuk ke ruang kerja Azure Databricks Anda.
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 opsi
-p <profile-name>
baris perintah , ditambahkan ke perintahdatabricks bundle validate
, ,databricks bundle deploy
,databricks bundle run
ataudatabricks bundle destroy
. Lihat Pengembangan Bundel Aset Databricks. - Sebagai nilai
profile
pemetaan dalam pemetaan tingkatworkspace
atas file konfigurasi bundel (meskipun Databricks merekomendasikan agar Anda menggunakanhost
pemetaan yang diatur ke URL ruang kerja Azure Databricks alih-alihprofile
pemetaan, karena membuat file konfigurasi bundel Anda lebih portabel). Lihat cakupanprofile
pemetaan di ruang kerja. - Jika nama profil konfigurasi adalah
DEFAULT
, itu digunakan secara default ketika opsi-p <profile-name>
baris perintah atauprofile
pemetaan (atauhost
) tidak ditentukan.
Untuk autentikasi M2M OAuth, lakukan hal berikut:
Selesaikan instruksi penyiapan autentikasi M2M OAuth. Lihat Mengautentikasi akses ke Azure Databricks dengan perwakilan layanan menggunakan OAuth (OAuth M2M).
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.
Atur variabel lingkungan berikut pada sumber daya komputasi sebagai berikut:
DATABRICKS_HOST
, atur ke URL per ruang kerja Azure Databricks, misalnyahttps://adb-1234567890123456.7.azuredatabricks.net
.DATABRICKS_CLIENT_ID
, atur ke nilai ID Aplikasi perwakilan layanan Azure Databricks.DATABRICKS_CLIENT_SECRET
, atur ke nilai Rahasia OAuth 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, elemen kunci yang menentukan pengaturan bundel dan sumber daya dalam databricks.yml
file konfigurasi sumber daya dan . Untuk informasi tentang konfigurasi bundel, lihat Konfigurasi Bundel Aset Databricks.
Tip
Contoh konfigurasi bundel dapat ditemukan dalam contoh konfigurasi Bundel dan repositori contoh Bundel di GitHub.
Langkah berikutnya
- Buat bundel yang menyebarkan buku catatan ke ruang kerja Azure Databricks lalu jalankan buku catatan yang disebarkan sebagai pekerjaan Azure Databricks. Lihat Mengembangkan pekerjaan di Azure Databricks menggunakan Bundel Aset Databricks.
- Buat bundel yang menyebarkan buku catatan ke ruang kerja Azure Databricks lalu jalankan buku catatan yang disebarkan sebagai alur Tabel Langsung Delta. Lihat Mengembangkan alur Tabel Langsung Delta dengan Bundel Aset Databricks.
- Buat bundel yang menyebarkan dan menjalankan Tumpukan MLOps. Lihat Bundel Aset Databricks untuk Tumpukan MLOps.
- Tambahkan bundel ke alur kerja CI/CD (integrasi berkelanjutan/penyebaran berkelanjutan) di GitHub. Lihat Menjalankan alur kerja CI/CD dengan Bundel Aset Databricks dan Tindakan GitHub.
- Buat bundel yang membangun, menyebarkan, dan memanggil file roda Python. Lihat Mengembangkan file roda Python menggunakan Bundel Aset Databricks.
- Buat templat kustom yang dapat Anda dan orang lain gunakan untuk membuat bundel. Templat kustom mungkin menyertakan izin default, perwakilan layanan, dan konfigurasi CI/CD kustom. Lihat Templat proyek Bundel Aset Databricks.
- Migrasikan dari dbx ke Bundel Aset Databricks. Lihat Migrasi dari dbx ke bundel.
- Temukan fitur baru utama terbaru yang dirilis untuk Bundel Aset Databricks. Lihat Catatan rilis fitur Bundel Aset Databricks.