Azure Databricks Spark yapılandırma özelliklerini ayarlama

İşlem ortamınızdaki ayarları özelleştirmek için Spark yapılandırma özelliklerini (Spark confs) ayarlayabilirsiniz.

Databricks genellikle çoğu Spark özelliğinin yapılandırılmasını önermemektedir. Özellikle açık kaynak Apache Spark'tan geçiş yaparken veya Databricks Runtime sürümlerini yükseltirken, eski Spark yapılandırmaları iş yüklerini en iyi duruma getiren yeni varsayılan davranışları geçersiz kılabilir.

Spark özellikleri tarafından denetlenen birçok davranış için Azure Databricks, bir tablo düzeyinde davranışı etkinleştirme veya bir yazma işleminin parçası olarak özel davranışı yapılandırma seçenekleri de sağlar. Örneğin, şema evrimi daha önce bir Spark özelliği tarafından denetlenmişti, ancak şimdi SQL, Python ve Scala'da kapsama sahip. MERGESQL, Python ve Scala kullanarak şema evrimini inceleyin.

Not defterleri ve işler için Spark özelliklerini yapılandırma

Not defterleri ve işler için Spark özelliklerini ayarlayabilirsiniz. Yapılandırmanın kapsamı, nasıl ayarladığınıza bağlıdır.

Yapılandırılan özellikler Şunlar için geçerlidir:
İşlem yapılandırmasını kullanma Tüm not defterleri ve görevler işlem kaynağıyla çalıştırılır.
Bir defterin içinde Yalnızca mevcut defter için SparkSession.

Spark özelliklerini işlem düzeyinde yapılandırma yönergeleri için bkz . Spark yapılandırması.

Not defterinde Spark özelliğini ayarlamak için aşağıdaki söz dizimini kullanın:

SQL

SET spark.sql.ansi.enabled = true

Python

spark.conf.set("spark.sql.ansi.enabled", "true")

Scala programlama dili

spark.conf.set("spark.sql.ansi.enabled", "true")

Databricks SQL'de Spark özelliklerini yapılandırma

Databricks SQL, yöneticilerin çalışma alanı ayarları menüsünde veri erişimi için Spark özelliklerini yapılandırmasına olanak tanır. Bkz. Veri erişim yapılandırmaları

Databricks SQL, veri erişim yapılandırmaları dışında, yalnızca sadelik için daha kısa adlarla adlandırılmış birkaç Spark yapılandırmasına izin verir. bkz.Yapılandırma parametreleri.

Çoğu desteklenen SQL yapılandırması için geçerli oturumunuzda genel davranışı geçersiz kılabilirsiniz. Aşağıdaki örnek ANSI modunu kapatır:

SET ANSI_MODE = false

Lakeflow işlem hatları için Spark özelliklerini yapılandırma

Lakeflow işlem hatları, işlem hattı için yapılandırılmış bir işlem kaynağı için veya tek tek akışlar, gerçekleştirilmiş görünümler veya akış tabloları için Spark özelliklerini yapılandırmanıza olanak tanır.

Kullanıcı arabirimini veya JSON'ı kullanarak işlem hattı ve Spark hesaplama özelliklerini ayarlayabilirsiniz. Bkz . İşlem hatlarını yapılandırma.

spark_conf Akışlar, görünümler veya tablolar için Spark özelliklerini yapılandırmak için Lakeflow işlem hatları dekoratör işlevlerindeki seçeneğini kullanın. Bkz. Lakeflow pipeline'ları Python dil başvuru kılavuzu.

Sunucusuz not defterleri ve işler için Spark özelliklerini yapılandırma

Sunucusuz işlem, not defterleri veya işler için çoğu Spark özelliğinin ayarlanmasını desteklemez. Yapılandırabileceğiniz özellikler şunlardır:

Mülk Varsayılan Açıklama
spark.databricks.execution.timeout 9000 (yalnızca not defterleri için geçerlidir) Spark Connect sorguları için yürütme zaman aşımı, saniye cinsinden. Varsayılan değer yalnızca not defteri sorguları için geçerlidir. Çalışma alanı yöneticileri, çalışma alanı yöneticisi ayarlarında sunucusuz not defterleri için varsayılanı değiştirebilir. Bkz. Serverless aşırı harcama koruması. Sunucusuz işlem üzerinde çalışan işler (ve klasik standart işlemde çalışan işler) için, bu özellik ayarlanmadığı sürece zaman aşımı olmaz.
spark.sql.legacy.timeParserPolicy CORRECTED Zaman ayrıştırma politikası.
spark.sql.session.timeZone Etc/UTC Bölge tabanlı bölge kimlikleri veya bölge zaman sapmaları biçiminde oturumun yerel saat diliminin kimliği.
spark.sql.shuffle.partitions auto Birleştirmeler veya toplamalar için verileri karıştırırken kullanılacak varsayılan bölüm sayısı.
spark.sql.ansi.enabled true Doğru olduğunda Spark SQL, Hive uyumlu olmak yerine ANSI uyumlu bir diyalekt kullanır.
spark.sql.files.maxPartitionBytes 134217728 (128 MB) Dosyaları okurken tek bir bölüme paketlenmesi gereken bayt sayısı üst sınırı.

Desteklenmeyen Spark özellikleri

Aşağıdaki Spark yapılandırma özellikleri Azure Databricks desteklenmez. Desteklenmeyen Spark özellikleri Azure Databricks tarafından yoksayılır veya Azure Databricks özelliklerle aynı anda kullanıldığında çakışmalara ve hatalara neden olabilir. Azure Databricks'e iş yüklerini geçiriyorsanız, desteklenmeyen ayarları önerilen alternatiflerle değiştirin.

Note

Burada listelenen özelliklere ek olarak, Databricks Runtime 19 ve üzeri standart erişim modu bazı Spark yapılandırma özelliklerini kısıtlar. Kısıtlı bir özelliği ayarlayan bir küme oluşturma veya düzenleme işlemi hatayla başarısız oluyor. Bkz. Spark yapılandırma sınırlamaları.

Desteklenmeyen Spark özellikleri Şunlar için geçerlidir: Databricks alternatifi
spark.dynamicAllocation.enabled
spark.dynamicAllocation.initialExecutors
spark.dynamicAllocation.minExecutors
spark.dynamicAllocation.maxExecutors
spark.dynamicAllocation.executorIdleTimeout
Klasik işlem Bunun yerine, yürütücü yaşam döngüsünü platform düzeyinde yöneten Azure Databricks otomatik ölçeklendirmeyi yapılandırın. Bkz. Otomatik ölçeklendirmeyi etkinleştirme.
spark.master
spark.driver.host
spark.driver.port
Sunucusuz işlem ve Lakeflow işlem hatları Azure Databricks sunucusuz altyapı bu iç bağlantı özelliklerini otomatik olarak yönetir. Kullanıcılar tarafından ayarlanamaz. Bunları sunucusuz işlem veya Lakeflow işlem hatlarında ayarlamak hatayla sonuçlanır.
spark.jars Sunucusuz işlem ve Lakeflow işlem hatları Azure Databricks Spark yapılandırmalarını kullanarak sunucusuz işlem veya Lakeflow işlem hatlarına JAR eklemeyi desteklemez, ancak sunucusuz JAR görevlerini çalıştırabilirsiniz. Bkz . İş görevleri için ortamı yapılandırma.
spark.databricks.runtimeoptions.* Klasik işlem runtime_options Bunun yerine küme yapılandırmasında özniteliğini kullanın. Çalışma zamanı seçenekleri herhangi bir küme türünde Spark yapılandırması olarak ayarlanamaz. Spark yapılandırmalarını kullanarak bunları ayarlamaya çalışmak hatayla sonuçlanır.

Spark yapılandırması için geçerli ayarı alma

Spark yapılandırmasının geçerli ayarını gözden geçirmek için aşağıdaki söz dizimini kullanın:

spark.conf.get("configuration_name")