Kitaplıklar
Üçüncü taraf veya özel kodun kümelerinizde çalıştırılan not defterlerinde ve işlerde kullanılabilmesini sağlamak için bir kitaplık yükleyebilirsiniz. Kitaplıklar Python, Java, Scala ve R ile yazılabilir. Python, Java ve Scala kitaplıklarını karşıya yükleyebilir ve PyPI, Maven ve CRAN depolarındaki dış paketlere işaret edebilirsiniz.
Azure Databricks, Databricks Runtime'da birçok ortak kitaplık içerir. Hangi kitaplıkların Databricks Runtime'a dahil olduğunu görmek için Databricks Runtime sürümünüzün Databricks Runtime sürüm notlarında Sistem Ortamı alt bölümüne bakın.
Not
Microsoft Desteği, Azure Databricks tarafından yüklenen ve korunan kitaplıklarla ilgili sorunları yalıtmaya ve çözmeye yardımcı olur. Kitaplıklar dahil üçüncü taraf bileşenleri için Microsoft, sorunları gidermenize yardımcı olmak için ticari açıdan makul destek sağlar. Microsoft Desteği en iyi çaba temelinde yardım sunar ve sorunu çözmenizi sağlayabilir. GitHub’da barındırılan açık kaynak bağlayıcılar ve projeler için, GitHub’da sorunları kaydetmenizi ve izlemenizi öneririz. Jar dosyalarını gölgeleme veya Python kitaplıkları oluşturma gibi geliştirme çalışmaları standart destek talebi gönderim süreci aracılığıyla desteklenmez: bunlar, daha hızlı bir çözüm için danışmanlık katılımı gerektirir. Destek, sizden açık kaynak teknolojilere yönelik derin uzmanlığın bulunabileceği bu teknolojilere yönelik başka kanallarla etkileşim kurmanızı isteyebilir. Çeşitli topluluk siteleri vardır. Azure Databricks için Microsoft Soru-Cevap sayfası ve Stack Overflow buna iki örnektir.
Küme kapsamlı kitaplıklar
Kitaplıkları küme üzerinde çalışan tüm not defterleri ve işler tarafından kullanılabilmesi için kümelere yükleyebilirsiniz. Databricks Python, JAR ve R kitaplıklarını destekler. Bkz. Küme kitaplıkları.
Küme kitaplığını doğrudan aşağıdaki kaynaklardan yükleyebilirsiniz:
- PyPI, Maven veya CRAN gibi bir paket deposu
- Çalışma alanı dosyaları
- Unity Kataloğu birimleri
- Bulut nesnesi depolama konumu
- Yerel makinenizdeki bir yol
Tüm kitaplık türleri veya tüm işlem yapılandırmaları için tüm konumlar desteklenmez. Yapılandırma önerileri için bkz . Kitaplıkları karşıya yükleme önerileri.
Önemli
Kitaplıklar Databricks Runtime 14.3 LTS ve altı kullanılırken DBFS'den yüklenebilir. Ancak, herhangi bir çalışma alanı kullanıcısı DBFS'de depolanan kitaplık dosyalarını değiştirebilir. Azure Databricks çalışma alanında kitaplıkların güvenliğini artırmak için, kitaplık dosyalarını DBFS kökünde depolamak, Databricks Runtime 15.1 ve üzerinde varsayılan olarak kullanım dışıdır ve devre dışıdır. Bkz . Kitaplıkları DBFS kökünde depolamak varsayılan olarak kullanım dışıdır ve devre dışıdır.
Databricks bunun yerine Python kitaplıkları , JAR dosyaları ve Spark bağlayıcıları dahil olmak üzere tüm kitaplıkların çalışma alanı dosyalarına veya Unity Kataloğu birimlerine yüklenmesini ya da kitaplık paketi depolarının kullanılmasını önerir. İş yükünüz bu desenleri desteklemiyorsa, bulut nesne depolama alanında depolanan kitaplıkları da kullanabilirsiniz.
Tam kitaplık desteği bilgileri için bkz . Python kitaplık desteği, Java ve Scala kitaplık desteği ve R kitaplığı desteği.
Kitaplıkları karşıya yükleme önerileri
Databricks, Python, JAR ve R kitaplıklarının çoğu yapılandırma yüklemesini destekler, ancak desteklenmeyen bazı senaryolar vardır. Tüm iş yükleri için önerilen mod olduğundan, paylaşılan erişim moduyla işlem üzerine yüklemeyi destekleyen kaynak konumlara kitaplıklar yüklemeniz önerilir. Bkz. Erişim modları. Paylaşılan erişim moduyla işleri zamanlarken işi bir hizmet sorumlusuyla çalıştırın.
Önemli
İşlemi yalnızca gerekli işlevler paylaşılan erişim modu tarafından desteklenmiyorsa tek kullanıcı erişim moduyla kullanın. Yalıtımlı paylaşılan erişim modu, Databricks'te önerilmez eski bir yapılandırmadır.
Aşağıdaki tabloda Databricks Runtime sürümüne ve Unity Kataloğu etkinleştirmesine göre düzenlenmiş öneriler sağlanmaktadır.
Yapılandırma | Öneri |
---|---|
Unity Kataloğu ile Databricks Runtime 13.3 LTS ve üzeri | Tüm hesap kullanıcıları için GRANT READ ile Unity Kataloğu birimlerinden paylaşılan erişim moduyla işlem üzerinde kitaplıkları yükleyin. Varsa, Maven koordinatlarının ve JAR kitaplığı yollarının izin verilenler listesine eklenmesi gerekir. |
Unity Kataloğu olmadan Databricks Runtime 11.3 LTS ve üzeri | Çalışma alanı dosyalarından kitaplıkları yükleyin. (Dosya boyutu sınırı 500 MB'tır.) |
Databricks Runtime 10.4 LTS ve altı | Kitaplıkları bulut nesne depolama alanından yükleyin. |
Python kitaplığı desteği
Aşağıdaki tabloda, kitaplık kaynak konumuna göre farklı küme erişim modları için Python tekerlek dosyaları için Databricks Runtime sürüm uyumluluğu gösterilir. Bkz . Databricks Runtime sürüm notları sürümleri, uyumluluk ve Erişim modları.
Databricks Runtime 15.0 ve üzerinde Python bağımlılıklarınızı yönetmek için requirements.txt dosyaları kullanabilirsiniz. Bu dosyalar desteklenen herhangi bir kaynak konuma yüklenebilir.
Not
Python yumurta dosyalarının yüklenmesi Databricks Runtime 14.0 ve üzeri sürümleriyle desteklenmez. Bunun yerine Python tekerlek dosyalarını kullanın veya PyPI'dan paketler yükleyin.
Paylaşılan erişim modu | Tek kullanıcı erişim modu | Yalıtımsız paylaşılan erişim modu (Eski) | |
---|---|---|---|
PyPI | 13.3 LTS ve üzeri | Desteklenen tüm Databricks Runtime sürümleri | Desteklenen tüm Databricks Runtime sürümleri |
Çalışma alanı dosyaları | 13.3 LTS ve üzeri | 13.3 LTS ve üzeri | 14.1 ve üzeri |
Birim | 13.3 LTS ve üzeri | 13.3 LTS ve üzeri | Desteklenmez |
Bulut depolaması | 13.3 LTS ve üzeri | Desteklenen tüm Databricks Runtime sürümleri | Desteklenen tüm Databricks Runtime sürümleri |
DBFS (Önerilmez) | Desteklenmez | 14.3 ve altı | 14.3 ve altı |
Java ve Scala kitaplık desteği
Aşağıdaki tabloda, kitaplık kaynak konumuna göre farklı küme erişim modları için JAR dosyaları için Databricks Runtime sürüm uyumluluğu gösterilir. Bkz . Databricks Runtime sürüm notları sürümleri, uyumluluk ve Erişim modları.
Not
Paylaşılan erişim modu, yöneticinin jar kitaplıkları için Maven koordinatları ve yolları eklemesini allowlist
gerektirir. Bkz. Paylaşılan işlemdeki izin verilenler listesi kitaplıkları ve başlatma betikleri.
Paylaşılan erişim modu | Tek kullanıcı erişim modu | Yalıtımsız paylaşılan erişim modu (Eski) | |
---|---|---|---|
Maven | 13.3 LTS ve üzeri | Desteklenen tüm Databricks Runtime sürümleri | Desteklenen tüm Databricks Runtime sürümleri |
Çalışma alanı dosyaları | Desteklenmez | Desteklenmez | 14.1 ve üzeri |
Birim | 13.3 LTS ve üzeri | 13.3 LTS ve üzeri | Desteklenmez |
Bulut depolaması | 13.3 LTS ve üzeri | Desteklenen tüm Databricks Runtime sürümleri | Desteklenen tüm Databricks Runtime sürümleri |
DBFS (Önerilmez) | Desteklenmez | 14.3 ve altı | 14.3 ve altı |
R kitaplığı desteği
Aşağıdaki tabloda, farklı küme erişim modları için CRAN paketleri için Databricks Runtime sürüm uyumluluğu gösterilir. Bkz . Databricks Runtime sürüm notları sürümleri, uyumluluk ve Erişim modları.
Paylaşılan erişim modu | Tek kullanıcı erişim modu | Yalıtımsız paylaşılan erişim modu (Eski) | |
---|---|---|---|
CRAN | Desteklenmez | Desteklenen tüm Databricks Runtime sürümleri | Desteklenen tüm Databricks Runtime sürümleri |
Not defteri kapsamlı kitaplıklar
Python ve R için kullanılabilen not defteri kapsamlı kitaplıklar, kitaplıkları yüklemenize ve bir not defteri oturumu kapsamında bir ortam oluşturmanıza olanak tanır. Bu kitaplıklar aynı kümede çalışan diğer not defterlerini etkilemez. Not defteri kapsamlı kitaplıklar kalıcı olmaz ve her oturum için yeniden yüklenmelidir. Belirli bir not defteri için özel bir ortama ihtiyacınız olduğunda not defteri kapsamlı kitaplıkları kullanın.
Not
JAR'ler not defteri düzeyinde yüklenemez.
Önemli
Çalışma alanı kitaplıkları kullanım dışı bırakıldı ve kullanılmamalıdır. Bkz . Çalışma alanı kitaplıkları (eski). Ancak, kitaplıkları çalışma alanı dosyaları olarak depolamak çalışma alanı kitaplıklarından farklıdır ve hala tam olarak desteklenir. Çalışma alanı dosyaları olarak depolanan kitaplıkları doğrudan işlem veya iş görevlerine yükleyebilirsiniz.
Python ortam yönetimi
Aşağıdaki tabloda, Azure Databricks’te Python kitaplıklarını yüklemek için kullanabileceğiniz seçeneklere genel bir bakış sunulmaktadır.
Not
- Conda tabanlı bir ortam kullanan özel kapsayıcılar, not defteri kapsamlı kitaplıklarla ve Databricks Runtime 10.4 LTS ve üzeri küme kitaplıklarıyla uyumlu değildir. Azure Databricks bunun yerine kitaplıkların doğrudan görüntüye yüklenmesini veya başlatma betiklerinin kullanılmasını önerir. Bu senaryolarda küme kitaplıklarını kullanmaya devam etmek için Spark yapılandırmasını
spark.databricks.driverNfs.clusterWidePythonLibsEnabled
ilefalse
arasına ayarlayabilirsiniz. Spark yapılandırması desteği 31 Aralık 2021 tarihinde veya sonrasında kaldırılacaktır.
Python paket kaynağı | %pip ile not defteri kapsamlı kitaplıklar | Temel ortam YAML dosyasıyla not defteri kapsamlı kitaplıklar | Küme kitaplıkları | İşler API'siyle iş kitaplıkları |
---|---|---|---|---|
PyPI | %pip install adresini kullanın. Örneği inceleyin. |
Temel ortam YAML dosyasına PyPI paket adı ekleyin. Örneği inceleyin. | Kaynak olarak PyPI'yi seçin. | İş kitaplıklarına yeni bir pypi nesnesi ekleyin ve package alanını belirtin. |
Nexus veya Artifactory gibi özel PyPI yansıması | --index-url seçeneğiyle %pip install kullanın. Gizli dizi yönetimi kullanılabilir. Örneği inceleyin. |
öğesini -–index-url bir temel ortam YAML dosyasına ekleyin. Gizli dizi yönetimi kullanılabilir. Örneği inceleyin. |
Desteklenmiyor. | Desteklenmiyor. |
Ham kaynakla birlikte VC (örneğin GitHub) | %pip install kullanın ve paket adı olarak depo URL’sini belirtin. Örneği inceleyin. |
Temel ortam YAML dosyasına paket adı olarak bir depo URL'si ekleyin. Örneği inceleyin. | Kaynak olarak PyPI'yi seçin ve paket adı olarak depo URL'sini belirtin. | İş kitaplıklarına yeni bir pypi nesnesi ekleyin ve package alanı olarak depo URL’sini belirtin. |
Ham kaynakla birlikte özel VCS | %pip install kullanın ve paket adı olarak temel kimlik doğrulaması ile depo URL’sini belirtin. Gizli dizi yönetimi kullanılabilir. Örneği inceleyin. |
Temel ortam YAML dosyasına paket adı olarak temel kimlik doğrulamasına sahip bir depo ekleyin. Örneği inceleyin. | Desteklenmiyor. | Desteklenmiyor. |
Dosya yolu | %pip install adresini kullanın. Örneği inceleyin. |
Temel ortam YAML dosyasına paket adı olarak bir dosya yolu ekleyin. Örneği inceleyin. | Kaynak olarak Dosya yolu/ADLS'yi seçin. | İş kitaplıklarına yeni egg veya whl nesne ekleyin ve alan olarak package dosya yolunu belirtin. |
Azure Data Lake Storage 2. Nesil | Önceden imzalanan bir URL ile birlikte kullanın %pip install . Azure Data Lake Storage 2. Nesil protokolüne abfss:// sahip yollar desteklenmez. |
Temel ortam YAML dosyasına paket adı olarak önceden imzalanan bir URL ekleyin. Azure Data Lake Storage 2. Nesil protokolüne abfss:// sahip yollar desteklenmez. |
Kaynak olarak Dosya yolu/ADLS'yi seçin. | İş kitaplıklarına yeni egg whl veya nesne ekleyin ve alan olarak package Azure Data Lake Storage 2. Nesil yolunu belirtin. |
Python kitaplığı önceliği
Yerleşik bir kitaplığın sürümünü geçersiz kılmanız veya kümede yüklü başka bir kitaplıkla ad çakışması olan özel bir kitaplığınız olması durumunda karşılaşabilirsiniz. komutunu çalıştırdığınızda import <library>
, yüksek önceliğe sahip kitaplık içeri aktarılır.
Önemli
Çalışma alanı dosyalarında depolanan kitaplıkların Python'a sys.path
nasıl eklendiğine bağlı olarak farklı öncelikleri vardır. Databricks Git klasörü geçerli çalışma dizinini diğer tüm kitaplıklardan önce yola eklerken, Git klasörleri dışındaki not defterleri de diğer kitaplıklar yüklendikten sonra geçerli çalışma dizinini ekler. Çalışma alanı dizinlerini yolunuza el ile eklerseniz, bunlar her zaman en düşük önceliğe sahiptir.
Aşağıdaki liste öncelikleri en yüksekten en düşüğe sıralar. Bu listede, daha düşük bir sayı daha yüksek öncelik anlamına gelir.
- Geçerli çalışma dizinindeki kitaplıklar (yalnızca Git klasörleri).
- Git klasörü kök dizinindeki kitaplıklar (yalnızca Git klasörleri).
- Not defteri kapsamlı kitaplıklar (
%pip install
not defterlerinde). - Küme kitaplıkları (kullanıcı arabirimi, CLI veya API kullanarak).
- Databricks Runtime'a dahil edilen kitaplıklar.
- Init betikleriyle yüklenen kitaplıklar, nasıl yüklendiklerine bağlı olarak yerleşik kitaplıkların öncesinde veya sonrasında çözümlenebilir. Databricks, init betikleriyle kitaplıkların yüklenmesini önermez.
- Geçerli çalışma dizinindeki kitaplıklar (Git klasörlerinde değil).
- çalışma alanı dosyaları öğesine
sys.path
eklenir.