Aracılığıyla paylaş


Databricks not defterlerinde Databricks Connect desteği

Uyarı

Bu makale Databricks Runtime 13.3 LTS ve üzeri için Databricks Connect'i kapsar.

Databricks Connect, Databricks'in dışındaki yerel bir geliştirme ortamından Databricks işlemlerine bağlanmanızı sağlar. Daha sonra kodunuzu Databricks'teki bir not defterine veya işe taşımadan önce doğrudan IDE'nizden kodunuzu geliştirebilir, hatalarını ayıklayabilir ve test edebilirsiniz. Bkz. Databricks Connect nedir?.

Taşınabilir -lik

Yerel geliştirmeden Databricks'e dağıtıma geçişi sorunsuz hale getirmek için Databricks Connect API'lerinin tümü, karşılık gelen Databricks Runtime'ın bir parçası olarak Databricks not defterlerinde kullanılabilir. Bu, kodunuzda herhangi bir değişiklik yapmadan kodunuzu bir Databricks not defterinde çalıştırmanıza olanak tanır.

DatabricksSession davranışı

DatabricksSession Databricks Connect yerel bir geliştirme ortamında ve Databricks çalışma alanındaki not defterlerinde ve işlerde kullanılırken davranışı biraz farklılık gösterir.

Yerel geliştirme ortamı davranışı

Databricks dışında bir IDE içinde kodu yerel olarak çalıştırırken, DatabricksSession.builder.getOrCreate() sağlanan yapılandırma varsa mevcut Spark oturumunu alır veya yoksa yeni bir Spark oturumu oluşturur. DatabricksSession.builder.create() her zaman yeni bir Spark oturumu oluşturur. host, tokenve cluster_id gibi bağlantı parametreleri kaynak koddan, ortam değişkenlerinden veya .databrickscfg yapılandırma profilleri dosyasından doldurulur.

Başka bir deyişle, Databricks Connect kullanılarak çalıştırıldığında aşağıdaki kod iki ayrı oturum oluşturur:

spark1 = DatabricksSession.builder.create()
spark2 = DatabricksSession.builder.create()

Databricks çalışma alanı davranışı

Databricks çalışma alanında bir not defterinde veya işte kod çalıştırırken, DatabricksSession.builder.getOrCreate() ek yapılandırma olmadan kullanıldığında varsayılan Spark oturumunu (spark değişkeni aracılığıyla da erişilebilir) döndürür. spark değişkeni, not defterinin ya da görevin bağlı olduğu hesaplama birimine bağlanacak şekilde önceden ayarlanmıştır. Örneğin, DatabricksSession.builder.clusterId(...).getOrCreate() veya DatabricksSession.builder.serverless().getOrCreate()kullanılarak ek bağlantı parametreleri ayarlanırsa yeni bir Spark oturumu oluşturulur.

DatabricksSession.builder.create() bir not defterinde DatabricksSession.builder.clusterId(...).create()gibi açık bağlantı parametreleri gerektirir, aksi takdirde [UNSUPPORTED] hatası döndürür.

remote()kullanarak, bir not defterine veya bir işe bağlı olmayan Databricks hesaplamasına bağlanmak için Databricks Connect'i kullanmak mümkündür. Bu işlem, yapılandırma kwargs veya host() ya da token()gibi bireysel yapılandırma yöntemleri alır. Bu gibi durumlarda, Databricks not defteri ya da iş dışında kullanıldığında olduğu gibi başvurulan hesaplama için yeni bir oturum oluşturulur.

Uyarı

Sunucusuz bilişim üzerinde çalışan not defterleri için varsayılan olarak sorgular 9000 saniye sonra zaman aşımına uğrar. Spark yapılandırma özelliğini spark.databricks.execution.timeoutayarlayarak bunu özelleştirebilirsiniz. Bkz. Azure Databricks üzerinde Spark yapılandırma özelliklerini ayarlama.