Bagikan melalui


Praktik terbaik untuk komputasi tanpa server

Artikel ini memberi Anda rekomendasi praktik terbaik untuk menggunakan komputasi tanpa server di buku catatan dan pekerjaan Anda.

Dengan mengikuti rekomendasi ini, Anda akan meningkatkan produktivitas, efisiensi biaya, dan keandalan beban kerja Anda di Azure Databricks.

Memigrasikan beban kerja ke komputasi tanpa server

Untuk memastikan isolasi kode pengguna di lingkungan komputasi tanpa server bersama, Azure Databricks menggunakan Lakeguard untuk mengisolasi kode pengguna dari mesin Spark dan dari pengguna lain.

Karena itu, beberapa beban kerja memerlukan perubahan kode untuk terus bekerja pada komputasi tanpa server. Untuk daftar batasan, lihat Batasan komputasi tanpa server.

Beban kerja tertentu lebih mudah dimigrasikan daripada yang lain. Beban kerja yang memenuhi persyaratan berikut akan menjadi yang paling mudah untuk dimigrasikan:

  • Data yang diakses harus disimpan di Katalog Unity.
  • Beban kerja harus kompatibel dengan komputasi standar.
  • Beban kerja harus kompatibel dengan Databricks Runtime 14.3 atau lebih tinggi.

Untuk menguji apakah beban kerja akan berfungsi pada komputasi tanpa server, jalankan pada sumber daya komputasi klasik dengan mode akses Standar dan Runtime Databricks 14.3 atau lebih tinggi. Jika operasi berhasil, beban kerja siap untuk migrasi.

Banyak beban kerja yang lebih lama tidak akan bermigrasi dengan mulus. Alih-alih mengode ulang semuanya, Azure Databricks merekomendasikan untuk memprioritaskan kompatibilitas komputasi tanpa server saat Anda membuat beban kerja baru.

Tentukan versi paket Python

Saat bermigrasi ke komputasi tanpa server, sematkan paket Python Anda ke versi tertentu untuk memastikan lingkungan yang dapat direproduksi. Jika Anda tidak menentukan versi, paket dapat diselesaikan ke versi yang berbeda berdasarkan versi lingkungan tanpa server, yang dapat meningkatkan latensi karena paket baru perlu diinstal.

Misalnya, file Anda requirements.txt harus menyertakan versi paket tertentu, seperti ini:

numpy==2.2.2
pandas==2.2.3

Versi lingkungan tanpa server

Komputasi tanpa server menggunakan versi lingkungan alih-alih versi Runtime Databricks tradisional. Ini menunjukkan pergeseran dalam cara Anda mengelola kompatibilitas beban kerja:

  • Pendekatan Databricks Runtime: Anda memilih versi Databricks Runtime tertentu untuk beban kerja Anda dan mengelola peningkatan secara manual untuk mempertahankan kompatibilitas.
  • Pendekatan tanpa server: Anda menulis kode terhadap versi lingkungan, dan Azure Databricks secara independen memperbarui server yang mendasarinya.

Versi lingkungan menyediakan API klien yang stabil yang memastikan beban kerja Anda tetap kompatibel sementara Azure Databricks secara independen memberikan peningkatan performa, peningkatan keamanan, dan perbaikan bug tanpa memerlukan perubahan kode pada beban kerja Anda.

Setiap versi lingkungan mencakup pustaka sistem, fitur, dan perbaikan bug yang diperbarui, sambil mempertahankan kompatibilitas mundur untuk beban kerja. Azure Databricks mendukung setiap versi lingkungan selama tiga tahun sejak tanggal rilisnya, memberi Anda siklus hidup yang dapat diprediksi untuk merencanakan peningkatan.

Untuk memilih versi lingkungan untuk beban kerja tanpa server Anda, lihat Memilih versi lingkungan. Untuk detail tentang versi lingkungan yang tersedia dan fiturnya, lihat Versi lingkungan tanpa server.

Menyerap data dari sistem eksternal

Karena komputasi tanpa server tidak mendukung penginstalan file JAR, Anda tidak dapat menggunakan driver JDBC atau ODBC untuk menyerap data dari sumber data eksternal.

Strategi alternatif yang dapat Anda gunakan untuk penyerapan meliputi:

  • Blok penyusun berbasis SQL seperti tabel streaming COPY INTO dan .

Alternatif penyerapan

Saat menggunakan komputasi tanpa server, Anda juga bisa menggunakan fitur berikut untuk mengkueri data Anda tanpa memindahkannya.

  • Jika Anda ingin membatasi duplikasi data atau menjamin bahwa Anda mengkueri data sesegar mungkin, Databricks merekomendasikan penggunaan Berbagi Delta. Lihat Apa yang dimaksud dengan Delta Sharing?.
  • Jika Anda ingin melakukan pelaporan ad hoc dan pekerjaan bukti konsep, Databricks merekomendasikan untuk mencoba pilihan yang tepat, yang mungkin merupakan Federasi Lakehouse. Federasi Lakehouse memungkinkan sinkronisasi seluruh database ke Azure Databricks dari sistem eksternal dan diatur oleh Unity Catalog. Lihat Apa itu Federasi Lakehouse?.

Coba salah satu atau kedua fitur ini dan lihat apakah fitur tersebut memenuhi persyaratan performa kueri Anda.

Konfigurasi Spark yang didukung

Untuk mengotomatiskan konfigurasi Spark pada komputasi tanpa server, Azure Databricks telah menghapus dukungan untuk mengatur sebagian besar konfigurasi Spark secara manual. Untuk menampilkan daftar parameter konfigurasi Spark yang didukung, lihat Mengonfigurasi properti Spark untuk buku catatan dan pekerjaan tanpa server.

Pekerjaan yang berjalan pada komputasi tanpa server akan gagal jika Anda mengatur konfigurasi Spark yang tidak didukung.

Memantau biaya komputasi tanpa server

Ada beberapa fitur yang dapat Anda gunakan untuk membantu Anda memantau biaya komputasi tanpa server: