Pustaka
Agar kode pihak ketiga atau kustom tersedia untuk notebook dan pekerjaan yang berjalan di klaster Anda, Anda dapat menginstal pustaka. Pustaka dapat ditulis dengan Python, Java, Scala, dan R. Anda dapat mengunggah pustaka Java, Scala, dan Python dan mengarahkan ke paket eksternal di repositori PyPI, Maven, dan CRAN.
Artikel ini berfokus untuk melakukan tugas pustaka di antarmuka pengguna ruang kerja. Anda dapat mengelola pustaka menggunakan CLI Pustaka atau API Pustaka 2.0.
Tip
Azure Databricks menyertakan banyak pustaka umum di Databricks Runtime. Untuk melihat pustaka mana yang disertakan dalam Databricks Runtime, lihat sub-bagian Lingkungan Sistem dari catatan rilis Databricks Runtime untuk versi Databricks Runtime Anda.
Penting
Azure Databricks tidak memanggil fungsi atexit Python saat buku catatan atau pekerjaan Anda menyelesaikan pemrosesan. Jika Anda menggunakan pustaka Python yang mendaftarkan penangan atexit, Anda harus memastikan panggilan kode Anda memerlukan fungsi sebelum keluar.
Penginstalan Python egg tidak akan digunakan lagi dan akan dihilangkan pada rilis Databricks Runtime pada masa mendatang. Gunakan Python wheels atau instal paket dari PyPI sebagai gantinya.
Catatan
Dukungan Microsoft membantu mengisolasi dan menyelesaikan masalah yang terkait dengan pustaka yang diinstal dan dikelola oleh Azure Databricks. Untuk komponen pihak ketiga, termasuk perpustakaan, Microsoft menyediakan dukungan yang wajar secara komersial untuk membantu Anda memecahkan masalah lebih lanjut. Dukungan Microsoft membantu dengan upaya terbaik dan mungkin dapat mengatasi masalah ini. Untuk konektor dan proyek sumber terbuka yang di-hosting di Github, kami sarankan Anda mengajukan masalah pada Github dan menindaklanjutinya. Upaya pengembangan seperti wadah naungan atau membangun perpustakaan Python tidak didukung melalui proses pengajuan kasus dukungan standar: kasus ini memerlukan keterlibatan konsultasi untuk resolusi yang lebih cepat. Dukungan mungkin meminta Anda untuk melibatkan saluran lain untuk teknologi sumber terbuka di mana Anda dapat menemukan keahlian yang mendalam untuk teknologi tersebut. Ada beberapa situs komunitas; dua di antarnya adalah halaman Q&A Microsoft untuk Azure Databricks dan Luapan Stack.
Anda dapat menginstal perpustakaan dalam tiga mode: ruang kerja,kluster terpasangdan lingkup buku catatan.
- Pustaka ruang kerja berfungsi sebagai repositori lokal tempat Anda membuat pustaka yang diinstal kluster. Pustaka ruang kerja mungkin adalah kode kustom yang dibuat oleh organisasi Anda, atau mungkin merupakan versi tertentu dari pustaka sumber terbuka yang telah distandarisasi oleh organisasi Anda.
- Pustaka kluster dapat digunakan oleh semua buku catatan yang berjalan pada kluster. Anda dapat menginstal pustaka kluster langsung dari repositori publik seperti PyPI atau Maven, atau membuat repositori dari pustaka ruang kerja yang diinstal sebelumnya.
- Pustaka yang tercakup di buku catatan, tersedia untuk Python dan R, memungkinkan Anda menginstal pustaka dan membuat lingkungan yang dicakup ke sesi buku catatan. Pustaka ini tidak memengaruhi buku catatan lain yang berjalan di kluster yang sama. Pustaka yang tercakup di buku catatan tidak dipertahankan dan harus diinstal ulang untuk setiap sesi. Gunakan pustaka yang tercakup di buku catatan saat Anda memerlukan lingkungan kustom untuk buku catatan tertentu.
Bagian ini mencakup:
- Pustaka ruang kerja
- Pustaka kluster
- Pustaka Python yang tercakup di buku catatan
- Pustaka R yang tercakup di buku catatan
Manajemen lingkungan Python
Tabel berikut memberikan gambaran umum tentang opsi yang dapat Anda gunakan untuk menginstal pustaka Python di Azure Databricks.
Catatan
- Kontainer kustom yang menggunakan lingkungan berbasis conda tidak kompatibel dengan pustaka yang tercakup di buku catatan di Databricks Runtime 9.0 ke atas dan dengan pustaka kluster di Databricks Runtime Databricks 10.1 ke atas. Sebagai gantinya, Azure Databricks merekomendasikan untuk menginstal pustaka langsung dalam gambar atau menggunakan skrip init. Untuk terus menggunakan pustaka kluster dalam skenario tersebut, Anda dapat mengatur Konfigurasi Spark
spark.databricks.driverNfs.clusterWidePythonLibsEnabledkefalse. Dukungan untuk konfigurasi Spark akan dihapus pada atau setelah 31 Desember 2021. - Pustaka yang tercakup di buku catatan menggunakan perintah ajaib diaktifkan secara default di Databricks Runtime 7.1 ke atas, Databricks Runtime 7.1 ML ke atas, dan Databricks Runtime 7.1 untuk Genomics ke atas. Pustaka tersebut juga tersedia menggunakan pengaturan konfigurasi di Databricks Runtime 6.4 ML hingga 7.0 ML dan Databricks Runtime 6.4 untuk Genomics ke Databricks Runtime 7.0 untuk Genomics. Lihat Persyaratan untuk detailnya.
- Pustaka bercakupan buku catatan dengan utilitas pustaka tidak akan digunakan lagi dan akan dihilangkan pada versi Databricks Runtime yang mendatang. Pustaka tersebut tidak tersedia di Databricks Runtime ML atau Databricks Runtime untuk Genomics.
| Sumber paket Python | Pustaka yang tercakup di buku catatan dengan %pip | Pustaka yang tercakup di buku catatan dengan utilitas pustaka | Pustaka kluster | Pustaka Pekerjaan dengan API Pekerjaan |
|---|---|---|---|---|
| PyPI | Gunakan %pip install. Lihat contoh. |
Gunakan dbutils.library.installPyPI. |
Pilih PyPI sebagai sumber. | Tambahkan objek pypi baru ke pustaka pekerjaan dan tentukan bidang package. |
| Cermin PyPI privat, seperti Nexus atau Artifactory | Gunakan %pip install dengan opsi --index-url. Manajemen rahasia tersedia. Lihat contoh. |
Gunakan dbutils.library.installPyPI dan tentukan argumen repo. |
Tidak didukung. | Tidak didukung. |
| VCS, seperti GitHub, dengan sumber mentah | Gunakan %pip install dan tentukan URL repositori sebagai nama paket. Lihat contoh. |
Tidak didukung. | Pilih PyPI sebagai sumber dan tentukan URL repositori sebagai nama paket. | Tambahkan objek pypi baru ke pustaka pekerjaan dan tentukan URL repositori sebagai bidang package. |
| VCS privat dengan sumber mentah | Gunakan %pip install dan tentukan URL repositori dengan autentikasi dasar sebagai nama paket. Manajemen rahasia tersedia. Lihat contoh. |
Tidak didukung. | Tidak didukung. | Tidak didukung. |
| DBFS | Gunakan %pip install. Lihat contoh. |
Gunakan dbutils.library.install(dbfs_path). |
Pilih DBFS sebagai sumbernya. | Tambahkan objek egg atau whl baru ke pustaka pekerjaan dan tentukan jalur DBFS sebagai bidang package. |