Aracılığıyla paylaş


Kitaplıkları yükleme

İşlem kaynaklarınızda çalışan not defterleri ve işler için üçüncü taraf veya özel kodu kullanılabilir hale getirmek 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ındaSistem 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, açık kaynak teknolojileri için bu teknolojiye yönelik derin uzmanlık bulabileceğiniz diğer 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.

Hesaplama kapsamlı kütüphaneler

Kitaplıkları, işlem üzerinde çalışan tüm not defterleri ve işler tarafından kullanılabilmesi için bir işlem kaynağına yükleyebilirsiniz. Databricks Python, JAR ve R kitaplıklarını destekler. Bkz. İşlem kapsamlı kütüphaneler.

Hesaplama kapsamlı bir kitaplığı doğrudan aşağıdaki kaynaklardan yükleyebilirsiniz.

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 Kitaplıkları Karşıya Yükleme Önerileri bölümüne bakın.

Ö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 artık önerilmiyor ve varsayılan olarak devre dışı bırakılmıştır.

Databricks , bunun yerine tüm kitaplıkların, Python kitaplıkları, JAR dosyaları ve Spark bağlayıcıları dahil olmak üzere, çalışma alanı dosyalarına veya Unity Catalog 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.

Kütüphaneler için 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, kitaplıkları standart erişim moduyla (eski adı paylaşılan erişim modu) işlem üzerine yüklemeyi destekleyen kaynak konumlara yüklemeniz önerilir. Bkz. Erişim modları. Standart erişim moduyla işleri planlarken, işi hizmet sorumlusuile çalıştırın.

Önemli

Gerekli işlevler standart erişim modu tarafından desteklenmiyorsa, yalnızca ayrılmış erişim modunu (eski adıyla tek kullanıcı erişim modu) kullanarak hesaplama yapın. Ayrıcalık tanımayan paylaşılan erişim modu, Databricks'te önerilmeyen 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
Databricks Runtime 13.3 LTS ve üzeri, Unity Kataloğu ile Unity Catalog birimlerindenstandart erişim moduyla hesaplamada kitaplıkları gerekli kullanıcılar için OKUMA yetkisiyle yükleyinGRANT.
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ı versiyonları Kitaplıkları bulut nesne depolama alanından yükleyin.

Python kitaplığı desteği

Aşağıdaki tabloda, kitaplık kaynak konumuna göre farklı işlem 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 ve uyumluluğu 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 egg dosyalarının yüklenmesi yalnızca Databricks Runtime 13.3 LTS ve önceki sürümlerde ve yalnızca ayrılmış veya yalıtım olmayan paylaşılan erişim modları için desteklenir. Ayrıca, birimlere veya çalışma alanı dosyalarına Python yumurtası dosyaları yükleyemezsiniz. Bunun yerine Python tekerlek dosyalarını kullanın veya PyPI'dan paketler yükleyin.

Standart erişim modu Ayrılmış erişim modu İzolasyon olmadan 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
Hacimler 13.3 LTS ve üzeri 13.3 LTS ve üzeri Desteklenmez
Bulut depolama 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ı işlem 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 ve uyumluluğu ve Erişim modları.

Scala JAR dosyalarını unity kataloğu etkin bir kümede standart erişim modunda dağıtma hakkında ayrıntılı bilgi için bkz . Öğretici: Sunucusuz işlemde Scala kodunu çalıştırma. Unity Kataloğu standart kümelerinde, JAR kitaplıklarındaki sınıfların gibi com.databricks.MyClassadlandırılmış bir pakette olması gerektiğini, aksi takdirde kitaplığı içeri aktarırken hatalar oluşacağını unutmayın.

Not

Standart erişim modu, jar kütüphaneleri için Maven koordinatlarını ve yollarını bir allowlist'a eklemek üzere yöneticinin müdahalesini gerektirir. Bkz. Allowlist kitaplıkları ve başlatma betikleri, standart erişim moduyla (eski adıyla paylaşılan erişim modu) üzerinde bilgisayarda.

Standart erişim modu Ayrılmış erişim modu İzolasyon olmadan 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
Hacimler 13.3 LTS ve üzeri 13.3 LTS ve üzeri Desteklenmez
Bulut depolama 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ı işlem 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 ve uyumluluğu ve Erişim modları.

Standart erişim modu Ayrılmış erişim modu İzolasyon olmadan paylaşılan erişim modu (Eski)
CRAN Desteklenmez Desteklenen tüm Databricks Runtime sürümleri Desteklenen tüm Databricks Runtime sürümleri

Yükleyici kimliği

Çalışma Alanı dosyalarından veya Unity Kataloğu birimlerinden bir kitaplık yüklediğinizde, işlem erişim moduna bağlı olarak kurulumla bir kimlik ilişkilendirilebilir. Kitaplık dosyasında okuma erişimi olan bir kimlik gereklidir.

Standart erişim modu Ayrılmış erişim modu İzolasyon olmadan paylaşılan erişim modu (Eski)
Kitaplığı yükleyen kullanıcının kimliği Adanmış müdürün kimliği Kimlik yok

Not defteri kapsamlı kitaplıklar

Python ve R için kullanılabilen not defteri kapsamındaki kütüphaneler, kütüphaneleri yüklemenize ve bir not defteri oturumu kapsamında bir ortam oluşturmanıza olanak tanır. Bu kitaplıklar aynı bilişim biriminde çalışan diğer not defterlerini etkilemez. Not defterine özgü kitaplıklar kalıcı değildir ve her oturum için yeniden yüklenmesi gerekir. Belirli bir not defteri için özel bir ortam gerektiğinde, not defterine özgü 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. Bakınız Ç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ış sağlanmaktadır.

Not

  • Conda tabanlı ortam kullanan özel kapsayıcılar, not defteri kapsamlı kitaplıklarla ve Databricks Runtime 10.4 LTS ve üzeri işlem 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 işlem kitaplıklarını kullanmaya devam etmek için Spark yapılandırmaspark.databricks.driverNfs.clusterWidePythonLibsEnabledfalseolarak ayarlayabilirsiniz. Spark yapılandırması desteği 31 Aralık 2021 tarihinde veya sonrasında kaldırılacaktır.
Python paket kaynağı %pip ile defter kapsamlı kütüphaneler Temel ortam YAML dosyasıyla not defteri kapsamlı kitaplıklar Hesaplama kapsamlı 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 olarakPyPI'yi seçin. İş kitaplıklarına yeni bir pypi nesnesi ekleyin ve package alanını belirtin.
Nexus veya Artifactory gibi özel PyPI yansıması %pip install seçeneğiyle --index-url kullanın. Gizli yönetimi kullanılabilir. Örneği inceleyin. öğesini -–index-url bir temel ortam YAML dosyasına ekleyin. Gizli yönetimi kullanılabilir. Örneği inceleyin. Desteklenmiyor. Desteklenmiyor.
Versiyon Kontrol Sistemleri (örneğin GitHub) ve ham kaynaklar %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 kaynak koduyla özel VCS %pip install kullanın ve paket adı olarak temel kimlik doğrulaması ile depo URL’sini belirtin. Gizli 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 seçin. İş kitaplıklarına yeni egg veya whl nesne ekleyin ve alan olarak package dosya yolunu belirtin.
Azure Data Lake Storage Önceden imzalanan bir URL ile birlikte kullanın %pip install . Azure Data Lake Storage protokolü abfss:// ile olan yollar desteklenmez. Temel ortam YAML dosyasına paket adı olarak önceden imzalanan bir URL ekleyin. Azure Data Lake Storage protokolü abfss:// ile olan yollar desteklenmez. Kaynak olarak dosya yolu/ADLS seçin. İş kitaplıklarına yeni bir egg veya whl nesnesi ekleyin ve package alanı olarak Azure Data Lake Storage yolunu belirtin.

Python kitaplığı önceliği

Yerleşik bir kitaplığın sürümünü geçersiz kılmanız gerekebileceği veya işlem kaynağında yüklü başka bir kitaplıkla ad çakışması olan bir özel kitaplığa sahip olabileceğiniz bir durumla 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.pathnası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.

  1. Geçerli çalışma dizinindeki kitaplıklar (yalnızca Git klasörleri).
  2. Git klasörü kök dizinindeki kitaplıklar (yalnızca Git klasörleri).
  3. Not defteri kapsamlı kitaplıklar (%pip install not defterinde).
  4. Bilgisayar kapsamlı kitaplıklar (arayüz, CLI veya API kullanılarak).
  5. Databricks Runtime'a dahil edilen kütüphaneler.
    • 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.
  6. Geçerli çalışma dizinindeki kitaplıklar (Git klasörlerinde değil).
  7. sys.path içerisine çalışma alanı dosyaları eklenir.