Aracılığıyla paylaş


DLT işlem hatları için Python bağımlılıklarını yönetme

DLT, işlem hatlarınızdaki dış bağımlılıkları destekler. Databricks, Python paketlerini yüklemek için iki desenden birinin kullanılmasını önerir:

  1. bir işlem hattındaki tüm kaynak dosyalara yönelik paketleri yüklemek için %pip install komutunu kullanın.
  2. Çalışma alanı dosyalarında depolanan kaynak koddan modülleri veya kitaplıkları içeri aktarabilirsiniz. Bkz. Git klasörlerinden veya çalışma alanı dosyalarından Python modüllerini içeri aktarma.

DLT, genel ve küme kapsamlıbaşlatma betiklerinin kullanılmasını da destekler. Ancak bu dış bağımlılıklar, özellikle başlatma betikleri, çalışma zamanı yükseltmeleriyle ilgili sorun riskini artırır. Bu riskleri azaltmak için işlem hatlarınızda başlatma betiklerini kullanmayı en aza indirin. İşlemeniz için başlatma betikleri gerekiyorsa, sorunları erken algılamak için işlem hattınızın testini otomatikleştirin. Init betikleri kullanıyorsanız Databricks test sıklığınızı artırmanızı önerir.

Önemli

JVM kitaplıkları DLT işlem hatlarında desteklenmediğinden, JVM kitaplıklarını yüklemek için bir init betiği kullanmayın. Ancak, python kitaplıkları gibi diğer kitaplık türlerini bir init betiğiyle yükleyebilirsiniz.

Python kütüphaneleri

Dış Python kitaplıklarını belirtmek için %pip install magic komutunu kullanın. Bir güncelleştirme başlatıldığında, DLT herhangi bir tablo tanımını çalıştırmadan önce %pip install komutu içeren tüm hücreleri çalıştırır. İşlem hattına dahil edilen her Python not defteri bir kitaplık ortamını paylaşır ve yüklü tüm kitaplıklara erişebilir.

Önemli

  • %pip install komutları DLT işlem hattı not defterinizin üst kısmındaki ayrı bir hücrede olmalıdır. %pip install komutları içeren hücrelere başka kod eklemeyin.
  • İşlem hattındaki her not defteri bir kitaplık ortamını paylaştığından, tek bir işlem hattında farklı kitaplık sürümleri tanımlayamazsınız. İşlemeniz farklı kitaplık sürümleri gerektiriyorsa, bunları farklı işlem hatlarında tanımlamanız gerekir.

Aşağıdaki örnek, numpy kitaplığını yükler ve işlem hattındaki herhangi bir Python not defteri için genel olarak kullanılabilir hale getirir:

%pip install simplejson

Python tekerlek paketi yüklemek için %pip install komutuna Python tekerlek yolunu ekleyin. Yüklü Python tekerlek paketleri, işlem hattındaki tüm tablolar tarafından kullanılabilir. Aşağıdaki örnek, Unity Kataloğu biriminden dltfns-1.0-py3-none-any.whl adlı bir Python tekerlek dosyası yükler:

%pip install /Volumes/my_catalog/my_schema/my_dlt_volume/dltfns-1.0-py3-none-any.whl

bkz. %pipile Python tekerlek paketi yükleme.

DLT işlem hattında Scala veya Java kitaplıklarını kullanabilir miyim?

Hayır, DLT yalnızca SQL ve Python'ı destekler. İşlem hattında JVM kitaplıklarını kullanamazsınız. JVM kitaplıklarının yüklenmesi öngörülemeyen davranışlara neden olur ve gelecekteki DLT sürümleriyle bozulabilir. İşlem hattınız bir init betiği kullanıyorsa, JVM kitaplıklarının betik tarafından yüklenmediğinden de emin olmanız gerekir.