Sunucusuz işlem sürüm notları
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.
Sunucusuz işlem hakkında daha fazla bilgi için bkz . Sunucusuz işlemle bağlantı kurma.
Databricks düzenli aralıklarla sunucusuz işlem güncelleştirmeleri yayımlar ve platforma yapılan iyileştirmeleri ve yükseltmeleri desteklemek için sunucusuz işlem çalışma zamanını otomatik olarak yükselter. Tüm kullanıcılar kısa bir süre içinde dağıtılan aynı güncelleştirmeleri alı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.
Sürüm 2024.30
23 Temmuz 2024, Saat 2024, Temmuz 2024, Saat 20:00
Yeni özellikler
- Yan tümcesindeki star (
*
) yan tümcesi desteği: Artık listedeki tüm sütunlara başvurmak için yan tümcesindekiWHERE
star (*
) yan tümcesiniSELECT
kullanabilirsiniz.WHERE
Örneğin,SELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*)
.
Değişiklikler
JSON ayrıştırma için geliştirilmiş hata kurtarma: ve JSON yol ifadeleri için
from_json()
kullanılan JSON ayrıştırıcısı artık yanlış biçimlendirilmiş söz diziminden daha hızlı kurtarılarak daha az veri kaybına neden olur.Yapı alanında, dizi değerinde, eşleme anahtarında veya eşleme değerinde hatalı biçimlendirilmiş JSON söz dizimi ile karşılaşıldığında, JSON ayrıştırıcısı artık yalnızca okunamayan alan, anahtar veya öğe için döndürülecektir
NULL
. Sonraki alanlar, anahtarlar veya öğeler düzgün şekilde ayrıştırılır. Bu değişiklik öncesinde JSON ayrıştırıcısı dizi, yapı veya eşleme ayrıştırma işlemini bıraktı ve kalan içerik için döndürüldüNULL
.
Sürüm 2024.15
15 Nisan 2024, Saat 2024, Temmuz 2024, Saat 20:00
Bu, ilk sunucusuz işlem sürümüdür. Bu sürüm kabaca Databricks Runtime 14.3'e karşılık gelir ve bazı sunucusuz ve eski özelliklerin desteğini kaldıran bazı değişiklikler içerir.
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
)spark.sql.ansi.enabled
(Varsayılan değertrue
)
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ı
Aşağıdaki Python kitaplıkları sunucusuz işlemde varsayılan olarak yüklenir. Ortam yan paneli kullanılarak ek bağımlılıklar yüklenebilir. Bkz . Not defteri bağımlılıklarını yükleme.
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 |
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