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 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:

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, 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:

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

Untuk autentikasi M2M OAuth, lakukan hal berikut:

  1. Selesaikan instruksi penyiapan autentikasi M2M OAuth. Lihat Mengautentikasi akses ke Azure Databricks dengan perwakilan layanan menggunakan OAuth (OAuth M2M).

  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, atur ke URL per ruang kerja Azure Databricks, misalnya https://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