Sunucusuz işlem sürüm notları
Önemli
Bu özellik Genel Önizlemededir. Uygunluk ve etkinleştirme hakkında bilgi için bkz . Sunucusuz işlem genel önizlemesini etkinleştirme.
Bu makalede, not defterleri ve iş akışları için sunucusuz işlemde şu anda kullanılabilen ve yaklaşan özellikler ve davranışlar açıklanmaktadır.
Databricks, sunucusuz işlem güncelleştirmelerini düzenli aralıklarla yayımlar. Tüm kullanıcılar kısa bir süre içinde dağıtılan aynı güncelleştirmeleri alır. Bkz . Sürümler nasıl dağıtılır?.
Yaklaşan davranış değişiklikleri
Bu bölümde, sonraki sunucusuz işlem sürümünde gelen davranış değişiklikleri vurgulanacaktır. Değişiklikler üretime gönderildiğinde sürüm notlarına eklenir.
Sürüm notları
Bu bölüm sunucusuz işlem için sürüm notlarını içerir. Sürüm notları yıla ve yılın haftasına göre düzenlenir. Sunucusuz işlem her zaman burada listelenen en son yayınlanan sürümü kullanarak çalışır.
Sunucusuz işlem sürümü 2024.15
15 Nisan 2024, Saat 2024, Temmuz 2024, Saat 20:00
Sunucusuz işlem sürümü 2024.15 üretime sunuldu. Bu, sunucusuz ve eski olmayan bazı özelliklerin desteğini kaldıran bazı değişikliklerle databricks Runtime 14.3'e karşılık gelen ilk sunucusuz işlem sürümüdür.
Bu sürüm aşağıdaki güncelleştirmeleri içerir:
- Desteklenen Spark yapılandırma parametreleri
- Önbelleğe alma API'leri ve SQL komutları desteklenmiyor
- Genel geçici görünümler desteklenmiyor
- CREATE FUNCTION (Dış) desteklenmiyor
- Hive SerDe tabloları desteklenmiyor
- Hive değişkenleri desteklenmiyor
- input_file işlevleri kullanım dışı bırakıldı
- Davranış değişiklikleri
Desteklenen Spark yapılandırma parametreleri
Sunucusuz işlemde Spark yapılandırmasını otomatikleştirmek için Databricks, Çoğu Spark yapılandırmasının el ile ayarlanması desteğini kaldırmıştır. Yalnızca aşağıdaki Spark yapılandırma parametrelerini el ile ayarlayabilirsiniz:
spark.sql.legacy.timeParserPolicy
(Varsayılan değerEXCEPTION
)spark.sql.session.timeZone
(Varsayılan değerEtc/UTC
)spark.sql.shuffle.partitions
(Varsayılan değerauto
)
Bu listede olmayan bir Spark yapılandırması ayarlarsanız sunucusuz işlem üzerinde çalışan iş başarısız olur.
Önbelleğe alma API'leri ve SQL komutları desteklenmiyor
Dataframe ve SQL önbellek API'lerinin kullanımı desteklenmez. Bu API'lerden veya SQL komutlarından herhangi birinin kullanılması özel duruma neden olur.
Desteklenmeyen API'ler:
- df.cache(), df.persist()
- df.unpersist()
- spark.catalog.cacheTable()
- spark.catalog.uncacheTable()
- spark.catalog.clearCache()
Desteklenmeyen SQL komutları:
Genel geçici görünümler desteklenmiyor
Genel geçici görünümlerin oluşturulması desteklenmez. Bu komutlardan birini kullanmak bir özel durumla sonuçlanır:
Bunun yerine Databricks, oturum geçici görünümlerinin kullanılmasını veya oturumlar arası veri geçişinin gerekli olduğu tablolar oluşturulmasını önerir.
CREATE FUNCTION (Dış) desteklenmiyor
CREATE FUNCTION (Dış) komutu desteklenmez. Bu komutun kullanılması bir özel duruma neden olur.
Bunun yerine Databricks, UDF'ler oluşturmak için CREATE FUNCTION (SQL ve Python) kullanılmasını önerir.
Hive SerDe tabloları desteklenmiyor
Hive SerDe tabloları desteklenmez. Ayrıca, Hive SerDe tablosuna veri yükleyen karşılık gelen LOAD DATA komutu desteklenmez. komutunun kullanılması bir özel durumla sonuçlanır.
Veri kaynakları için destek AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT ve XML ile sınırlıdır.
Hive değişkenleri desteklenmiyor
Hive değişkenleri (örneğin ${env:var}
, , ${configName}
, ${system:var}
ve spark.sql.variable
) veya söz dizimini ${var}
kullanan yapılandırma değişkeni başvuruları desteklenmez. Hive değişkenlerini kullanmak bir özel durumla sonuçlanır.
Bunun yerine, oturum durumunu bildirmek, değiştirmek ve başvurmak için DECLARE VARIABLE, SET VARIABLE ve SQL oturum değişkeni başvurularını ve parametre işaretleyicilerini ('?', veya ':var') kullanın. Çoğu durumda nesne adlarını parametreleştirmek için IDENTIFIER yan tümcesini de kullanabilirsiniz.
input_file işlevleri kullanım dışı bırakıldı
input_file_name(), input_file_block_length() ve input_file_block_start() işlevleri kullanım dışı bırakıldı. Bu işlevlerin kullanılması önerilmez.
Bunun yerine, dosya meta verisi bilgilerini almak için dosya meta verileri sütununu kullanın.
Davranış değişiklikleri
Sunucusuz işlem sürümü 2024.15 aşağıdaki davranış değişikliklerini içerir:
- unhex(hexStr) hata düzeltmesi: İşlev kullanılırken
unhex(hexStr)
, hexStr her zaman bir baytta sola doldurulur. Daha önce unhex işlevi ilk yarım baytı yoksaymıştı. Örneğin:unhex('ABC')
artık yerinex'BC'
üretirx'0ABC'
. - Otomatik oluşturulan sütun diğer adları artık kararlıdır: Kullanıcı tarafından belirtilen bir sütun diğer adı olmadan bir ifadenin sonucuna başvurulduğunda, otomatik olarak oluşturulan bu diğer ad artık kararlı olacaktır. Yeni algoritma, gerçekleştirilmiş görünümler gibi özelliklerde kullanılan önceden otomatik olarak oluşturulan adlarda değişiklik olmasına neden olabilir.
- Tür alanlarıyla
CHAR
tablo taramaları artık her zaman dolduruldu: Delta tabloları, belirli JDBC tabloları ve dış veri kaynakları CHAR verilerini doldurulmayan biçimde depolar. Databricks, okurken doğru semantiği sağlamak için verileri belirtilen uzunlukta boşluklarla doldurmaya devam edecektir. - BIGINT/DECIMAL'den TIMESTAMP'ye atamalar taşan değerler için bir özel durum oluşturur: Databricks, değeri Unix döneminin saniye sayısı olarak değerlendirerek BIGINT ve DECIMAL'den TIMESTAMP'ye dönüştürmeye izin verir. Daha önce Databricks taşan değerler döndürse de taşma durumlarında bir özel durum oluşturur. Özel durum yerine NULL döndürmek için kullanın
try_cast
. - PySpark UDF yürütmesi, tek kullanıcılı işlemde UDF yürütmesinin tam davranışıyla eşleşecek şekilde geliştirilmiştir: Aşağıdaki değişiklikler yapılmıştır:
- Dize dönüş türüne sahip UDF'ler artık dize olmayan değerleri örtük olarak dizelere dönüştürmez. Daha önce, dönüş türüne
str
sahip UDF'ler, döndürülen değerin gerçek veri türünden bağımsız olarak sonuda birstr(..)
sarmalayıcı uygulardı. - Dönüş türlerine sahip
timestamp
UDF'ler artık zaman damgalarına örtük olarak saat dilimi dönüştürmesi uygulamaz.
- Dize dönüş türüne sahip UDF'ler artık dize olmayan değerleri örtük olarak dizelere dönüştürmez. Daha önce, dönüş türüne
Sistem ortamı
Sunucusuz işlem aşağıdaki sistem ortamını içerir:
- İşletim Sistemi: Ubuntu 22.04.3 LTS
- Python: 3.10.12
- Delta Gölü: 3.1.0
Yüklü Python kitaplıkları
Kitaplık | Sürüm | Kitaplık | Sürüm | Kitaplık | Sürüm |
---|---|---|---|---|---|
anyio | 3.5.0 | argon2-cffi | 21.3.0 | argon2-cffi-bindings | 21.2.0 |
asttokens | 2.0.5 | astunparse | 1.6.3 | attrs | 22.1.0 |
geri arama | 0.2.0 | beautifulsoup4 | 4.11.1 | siyah | 22.6.0 |
çamaşır suyu | 4.1.0 | yanıp sönen | 1.4 | boto3 | 1.24.28 |
botocore | 1.27.96 | önbellek araçları | 5.3.2 | sertifikalı | 2022.12.7 |
cffi | 1.15.1 | chardet | 4.0.0 | charset-normalizer | 2.0.4 |
tıklama | 8.0.4 | Comm | 0.1.2 | konturlu | 1.0.5 |
şifreleme | 39.0.1 | bisikletçi | 0.11.0 | Cython | 0.29.32 |
databricks-connect | 14.3.1 | databricks-sdk | 0.20.0 | dbus-python | 1.2.18 |
hata ayıklama | 1.6.7 | dekoratör | 5.1.1 | defusedxml | 0.7.1 |
daistlib | 0.3.8 | docstring-to-markdown | 0,11 | giriş noktaları | 0.4 |
Yürütme | 0.8.3 | modellere genel bakış | 1.1.1 | fastjsonschema | 2.19.1 |
dosya kilidi | 3.13.1 | fonttools | 4.25.0 | google-auth | 2.28.1 |
googleapis-common-protos | 1.62.0 | grpcio | 1.62.0 | grpcio-status | 1.62.0 |
httplib2 | 0.20.2 | idna | 3.4 | importlib-metadata | 4.6.4 |
ipyflow-core | 0.0.198 | ipykernel | 6.25.0 | ipython | 8.14.0 |
ipython-genutils | 0.2.0 | ipywidgets | 7.7.2 | jedi | 0.18.1 |
Jeepney | 0.7.1 | Jinja2 | 3.1.2 | jmespath | 0.10.0 |
joblib | 1.2.0 | jsonschema | 4.17.3 | jupyter-client | 7.3.4 |
jupyter-server | 1.23.4 | jupyter_core | 5.2.0 | jupyterlab-pygments | 0.1.2 |
jupyterlab pencere öğeleri | 1.0.0 | anahtarlık | 23.5.0 | kiwisolver | 1.4.4 |
başlatma çubuğu | 1.10.16 | lazr.restfulclient | 0.14.4 | lazr.uri | 1.0.6 |
lxml | 4.9.1 | MarkupSafe | 2.1.1 | matplotlib | 3.7.0 |
matplotlib-inline | 0.1.6 | Mccabe | 0.7.0 | yanlış | 0.8.4 |
more-itertools | 8.10.0 | mypy uzantıları | 0.4.3 | nbclassic | 0.5.2 |
nbclient | 0.5.13 | nbconvert | 6.5.4 | nbformat | 5.7.0 |
nest-asyncio | 1.5.6 | nodeenv | 1.8.0 | not defteri | 6.5.2 |
notebook_shim | 0.2.2 | numpy | 1.23.5 | oauthlib | 3.2.0 |
Ambalaj | 23,2 | pandas | 1.5.3 | pandocfilters | 1.5.0 |
parso | 0.8.3 | pathspec | 0.10.3 | Patsy | 0.5.3 |
pexpect | 4.8.0 | pickleshare | 0.7.5 | Yastık | 9.4.0 |
Pip | 22.3.1 | platformdirs | 2.5.2 | çizim | 5.9.0 |
takılmış | 1.0.0 | prometheus-client | 0.14.1 | prompt-toolkit | 3.0.36 |
protobuf | 4.25.3 | psutil | 5.9.0 | psycopg2 | 2.9.3 |
ptyprocess | 0.7.0 | saf değerlendirme | 0.2.2 | py4j | 0.10.9.7 |
serçe | 8.0.0 | pyarrow düzeltmesi | 0,5 | pyasn1 | 0.5.1 |
pyasn1-modules | 0.3.0 | pyccolo | 0.0.52 | pycparser | 2.21 |
pydantic | 1.10.6 | pyflakes | 3.1.0 | Pygments | 2.11.2 |
PyGObject | 3.42.1 | PyJWT | 2.3.0 | pyodbc | 4.0.32 |
pyparsing | 3.0.9 | pyright | 1.1.294 | pirsistent | 0.18.0 |
python-dateutil | 2.8.2 | python-lsp-jsonrpc | 1.1.1 | python-lsp-server | 1.8.0 |
pytoolconfig | 1.2.5 | pytz | 2022.7 | pyzmq | 23.2.0 |
istekler | 2.28.1 | ip | 1.7.0 | rsa | 4,9 |
s3transfer | 0.6.2 | scikit-learn | 1.1.1 | scipy | 1.10.0 |
seaborn | 0.12.2 | Gizli Dizi | 3.3.1 | Send2Trash | 1.8.0 |
kurulum araçları | 65.6.3 | Altı | 1.16.0 | sniffio | 1.2.0 |
soupsieve | 2.3.2.post1 | ssh-import-id | 5.11 | stack-data | 0.2.0 |
statsmodeller | 0.13.5 | Azim | 8.1.0 | terminado | 0.17.1 |
threadpoolctl | 2.2.0 | tinycss2 | 1.2.1 | tokenize-rt | 4.2.1 |
tomli | 2.0.1 | hortum | 6.1 | traitlets | 5.7.1 |
typing_extensions | 4.4.0 | ujson | 5.4.0 | katılımsız yükseltmeler | 0,1 |
urllib3 | 1.26.14 | virtualenv | 20.16.7 | wadllib | 1.3.6 |
wcwidth | 0.2.5 | webencodings | 0.5.1 | websocket-client | 0.58.0 |
whatthepatch | 1.0.2 | tekerlek | 0.38.4 | widgetsnbextension | 3.6.1 |
yapf | 0.33.0 | Zipp | 1.0.0 |
Sınırlamalar
Sunucusuz işlem, paylaşılan işlem mimarisini temel alır. Paylaşılan işlemden devralınan en önemli sınırlamalar ve sunucusuz özel ek sınırlamalar aşağıda listelenmiştir. Paylaşılan işlem sınırlamalarının tam listesi için bkz . Unity Kataloğu için işlem erişim modu sınırlamaları.
Genel sınırlamalar
- Scala ve R desteklenmez.
- SQL yazılırken yalnızca ANSI SQL desteklenir.
- Spark RDD API'leri desteklenmez.
- Spark Bağlamı (sc),
spark.sparkContext
vesqlContext
desteklenmez. - DBFS'ye erişemezsiniz.
- Databricks Container Services desteklenmez.
- Web terminali desteklenmez.
- Hiçbir sorgu 48 saatten uzun süre çalışamıyor.
- Dış veri kaynaklarına bağlanmak için Unity Kataloğu'nu kullanmanız gerekir. Bulut depolamaya erişmek için dış konumları kullanın.
- Veri kaynakları için destek AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT ve XML ile sınırlıdır.
- Kullanıcı tanımlı işlevler (UDF) İnternet'e erişemiyor.
- Tek tek satırlar en fazla 128 MB boyutu aşmamalıdır.
- Spark kullanıcı arabirimi kullanılamıyor. Bunun yerine, Spark sorgularınızla ilgili bilgileri görüntülemek için sorgu profilini kullanın. Bkz. Sorgu profili.
- Databricks uç noktalarını kullanan Python istemcileri "CERTIFICATE_VERIFY_FAILED" gibi SSL doğrulama hatalarıyla karşılaşabilir. Bu hataları geçici olarak çözmek için istemcisini içinde
/etc/ssl/certs/ca-certificates.crt
bulunan CA dosyasına güvenecek şekilde yapılandırın. Örneğin, sunucusuz bir not defterinin veya işin başında aşağıdaki komutu çalıştırın:import os; os.environ['SSL_CERT_FILE'] = '/etc/ssl/certs/ca-certificates.crt'
- Çalışma alanları arası API istekleri desteklenmez.
Akış sınırlamaları
- Yapılandırılmış Akış sorguları, sorgunun tamamlandığından emin olmak için çağrısı
query.awaitTermination()
gerektirir. - Varsayılan veya zamana bağlı tetikleyici aralıkları için destek yoktur. Yalnızca
Trigger.AvailableNow
desteklenir. Bkz . Yapılandırılmış Akış tetikleyici aralıklarını yapılandırma. - Paylaşılan erişim modunda akış için tüm sınırlamalar da geçerlidir. Bkz . Unity Kataloğu paylaşılan erişim modu için akış sınırlamaları.
Makine öğrenmesi sınırlamaları
- Machine Learning ve Apache Spark MLlib için Databricks Runtime desteklenmez.
- GPU'lar desteklenmez.
Not defterleri sınırlamaları
- Not defterlerinin yapılandırılamayan 8 GB belleğe erişimi vardır.
- Not defteri kapsamlı kitaplıklar geliştirme oturumlarında önbelleğe alınmaz.
- Bir not defterini kullanıcılar arasında paylaşırken TEMP tablolarını ve görünümlerini paylaşma desteklenmez.
- Not defterlerindeki veri çerçeveleri için Otomatik Tamamlama ve Değişken Gezgini desteklenmez.
İş akışı sınırlamaları
- İş akışları için sunucusuz işlem için sürücü boyutu şu anda sabittir ve değiştirilemez.
- Görev günlükleri, görev çalıştırması başına yalıtılmaz. Günlükler birden çok görevden çıktı içerir.
- Görev kitaplıkları not defteri görevleri için desteklenmez. Bunun yerine not defteri kapsamlı kitaplıkları kullanın. Bkz. Not defteri kapsamlı Python kitaplıkları.
İşlemle ilgili sınırlamalar
Aşağıdaki işlem özellikleri desteklenmez:
- İşlem ilkeleri
- İşlem kapsamlı init betikleri
- Özel veri kaynakları ve Spark uzantıları dahil olmak üzere işlem kapsamlı kitaplıklar. Bunun yerine not defteri kapsamlı kitaplıkları kullanın.
- Örnek profilleri de dahil olmak üzere işlem düzeyinde veri erişim yapılandırmaları. Sonuç olarak, bulut yollarındaki HMS aracılığıyla veya katıştırılmış kimlik bilgileri olmayan DBFS bağlamalarıyla tablolara ve dosyalara erişim çalışmaz.
- Örnek havuzları
- İşlem olay günlükleri
- Apache Spark işlem yapılandırmaları ve ortam değişkenleri
Sık sorulan sorular (SSS)
- Sürümler nasıl dağıtılır?
- Hangi sunucusuz sürümü çalıştırıyorum Nasıl yaparım??
- Sunucusuz maliyetleri tahmin Nasıl yaparım??
- Belirli bir iş yükü için DBU kullanımını analiz Nasıl yaparım??
- İş akışları ve not defterleri için sunucusuz işlemi etkinleştirmedim, sunucusuz iş akışları için faturalama kayıtlarını neden görüyorum?
- Sunucusuz işlem özel depoları destekliyor mu?
- İş görevlerim için kitaplıkları Nasıl yaparım? yükleyebilirsiniz?
- Özel veri kaynaklarına bağlanabilir miyim?
- DAB'ler ile iş akışları için sunucusuz işlem yapılandırabilir miyim?
Sürümler nasıl dağıtılır?
Sunucusuz işlem, sürümsüz bir üründür; bu da Databricks'in platforma yapılan iyileştirmeleri ve yükseltmeleri desteklemek için sunucusuz işlem çalışma zamanını otomatik olarak yükseltdiği anlamına gelir. Tüm kullanıcılar kısa bir süre içinde dağıtılan aynı güncelleştirmeleri alır.
Hangi sunucusuz sürümü çalıştırıyorum Nasıl yaparım??
Sunucusuz iş yükleri her zaman en son çalışma zamanı sürümünde çalışır. En son sürüm için sürüm notları bölümüne bakın.
Sunucusuz maliyetleri tahmin Nasıl yaparım??
Databricks, temsili veya belirli bir iş yükünü çalıştırmayı ve karşılaştırmayı ve ardından faturalama sistemi tablosunu analiz etmenizi önerir. Bkz. Faturalanabilir kullanım sistemi tablo başvurusu.
Belirli bir iş yükü için DBU kullanımını analiz Nasıl yaparım??
Belirli bir iş yükünün maliyetini görmek için sistem tablosunu sorgular system.billing.usage
. Örnek sorgular için sunucusuz işlem maliyetini izleme ve maliyet gözlemlenebilirliği panomuzu indirme bölümüne bakın.
İş akışları ve not defterleri için sunucusuz işlemi etkinleştirmedim, sunucusuz iş akışları için faturalama kayıtlarını neden görüyorum?
Lakehouse İzleme ve tahmine dayalı iyileştirme , sunucusuz iş akışları SKU'su kapsamında da faturalandırılır.
Sunucusuz işlem önizlemesinin bu iki özelliği kullanabilmesi için etkinleştirilmesi gerekmez.
Sunucusuz işlem özel depoları destekliyor mu?
Depolar özel olabilir veya kimlik doğrulaması gerektirebilir. Güvenlik nedeniyle, kimliği doğrulanmış depolara erişirken önceden imzalanmış bir URL gereklidir.
İş görevlerim için kitaplıkları Nasıl yaparım? yükleyebilirsiniz?
Databricks, iş akışlarınıza yönelik kitaplıkları yüklemek ve yönetmek için ortamları kullanmanızı önerir. Bkz . Not defteri olmayan görevler için ortamları ve bağımlılıkları yapılandırma.
Özel veri kaynaklarına bağlanabilir miyim?
Hayır, yalnızca Lakehouse Federasyonu kullanan kaynaklar desteklenir. Bkz . Desteklenen veri kaynakları.
DAB'ler ile iş akışları için sunucusuz işlem yapılandırabilir miyim?
Evet, DAB'ler sunucusuz işlem kullanan işleri yapılandırmak için kullanılabilir. Bkz . Sunucusuz işlem kullanan bir iş yapılandırma.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin