Poznámky k verzi bezserverového výpočetního prostředí
Tento článek vysvětluje funkce a chování, které jsou aktuálně dostupné a nadcházející na výpočetních prostředcích bez serveru pro poznámkové bloky a pracovní postupy.
Další informace o bezserverových výpočetních prostředcích najdete v tématu Připojení k výpočetním prostředkům bez serveru.
Databricks pravidelně vydává aktualizace bezserverového výpočetního prostředí, automaticky upgraduje bezserverový výpočetní modul runtime, aby podporoval vylepšení a upgrady na platformu. Všichni uživatelé získají stejné aktualizace, které se nasadí za krátkou dobu.
Nadcházející změny chování
Tato část zvýrazní změny chování přicházející v příští bezserverové výpočetní verzi. Když se změny nasdílí do produkčního prostředí, přidají se do poznámek k verzi.
Poznámky k verzi
Tato část obsahuje poznámky k verzi pro bezserverové výpočetní prostředky. Poznámky k verzi jsou uspořádány podle roku a týdne v roce. Bezserverové výpočetní prostředí se vždy spouští pomocí nejnovější vydané verze uvedené zde.
Verze 2024.30
23. července 2024
Nové funkce
- Podpora klauzule hvězdičky (
*
) vWHERE
klauzuli: Nyní můžete použít klauzuli hvězdička (*
) vWHERE
klauzuli k odkazování na všechny sloupce zeSELECT
seznamu. NapříkladSELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*)
.
Změny
Vylepšené obnovení chyb pro parsování JSON: Analyzátor JSON používaný pro
from_json()
výrazy cesty JSON se teď obnovuje rychleji z poškozené syntaxe, což vede k menší ztrátě dat.Při výskytu chybné syntaxe JSON v poli struktury, maticové hodnotě, klíči mapy nebo hodnotě mapy se analyzátor JSON teď vrátí
NULL
jenom pro nečitelné pole, klíč nebo prvek. Další pole, klíče nebo prvky se správně parsují. Před touto změnou parser JSON opustil analýzu pole, struktury nebo mapování a vrátilNULL
zbývající obsah.
Verze 2024.15
15. dubna 2024
Jedná se o počáteční bezserverovou výpočetní verzi. Tato verze zhruba odpovídá databricks Runtime 14.3 s některými úpravami, které odeberou podporu některých bezserverových a starších funkcí.
Podporované parametry konfigurace Sparku
Kvůli automatizaci konfigurace Sparku na bezserverových výpočetních prostředcích služba Databricks odebrala podporu ručního nastavení většiny konfigurací Sparku. Můžete ručně nastavit pouze následující parametry konfigurace Sparku:
spark.sql.legacy.timeParserPolicy
(výchozí hodnota jeEXCEPTION
)spark.sql.session.timeZone
(výchozí hodnota jeEtc/UTC
)spark.sql.shuffle.partitions
(výchozí hodnota jeauto
)spark.sql.ansi.enabled
(výchozí hodnota jetrue
)
Pokud nastavíte konfiguraci Sparku, která není v tomto seznamu, úloha běží na bezserverových výpočetních prostředcích.
Rozhraní API pro ukládání do mezipaměti a příkazy SQL se nepodporují.
Použití rozhraní API datového rámce a mezipaměti SQL se nepodporuje. Pokud použijete některá z těchto rozhraní API nebo příkazů SQL, dojde k výjimce.
Nepodporovaná rozhraní API:
- df.cache(), df.persist()
- df.unpersist()
- spark.catalog.cacheTable()
- spark.catalog.uncacheTable()
- spark.catalog.clearCache()
Nepodporované příkazy SQL:
Globální dočasná zobrazení nejsou podporována.
Vytváření globálních dočasných zobrazení není podporováno. Použití některého z těchto příkazů způsobí výjimku:
Místo toho Databricks doporučuje používat dočasná zobrazení relace nebo vytvářet tabulky, ve kterých se vyžadují předávání dat mezi relacemi.
FUNKCE CREATE (externí) není podporována.
Příkaz CREATE FUNCTION (External) není podporován. Při použití tohoto příkazu dojde k výjimce.
Místo toho databricks doporučuje k vytváření funkcí CREATE FUNCTION (SQL a Python) použít funkci CREATE.
Nepodporované tabulky Hive SerDe
Tabulky Hive SerDe se nepodporují. Kromě toho se nepodporuje odpovídající příkaz LOAD DATA , který načítá data do tabulky Hive SerDe. Při použití příkazu dojde k výjimce.
Podpora zdrojů dat je omezená na AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT a XML.
Proměnné Hive se nepodporují.
Proměnné Hive (například ${env:var}
, ${configName}
, ${system:var}
a spark.sql.variable
) nebo odkazy na proměnné konfigurace používající ${var}
syntaxi nejsou podporovány. Při použití proměnných Hive dojde k výjimce.
Místo toho použijte odkazy na proměnné DEKLAROVAT PROMĚNNOU, SET PROMĚNNOU a PROMĚNNÉ RELACE SQL a značky parametrů ('?', nebo ':var') k deklaraci, úpravě a referenčnímu stavu relace. Klauzuli IDENTIFIER můžete také použít k parametrizaci názvů objektů v mnoha případech.
input_file funkce jsou zastaralé
Funkce input_file_name(), input_file_block_length() a input_file_block_start() jsou zastaralé. Používání těchto funkcí se důrazně nedoporučuje.
Místo toho použijte sloupec metadat souboru k načtení informací o metadatech souboru.
Změny chování
Bezserverové výpočetní prostředky verze 2024.15 zahrnují následující změny chování:
- oprava chyby unhex(hexStr): Při použití
unhex(hexStr)
funkce je hexStr vždy vycpaný do celého bajtu. Dříve funkce unhex ignorovala první poloviční bajt. Například:unhex('ABC')
nyní vytvoříx'0ABC'
místox'BC'
. - Automaticky generované aliasy sloupců jsou nyní stabilní: Když se na výsledek výrazu odkazuje bez aliasu sloupce zadaného uživatelem, bude tento automaticky vygenerovaný alias nyní stabilní. Nový algoritmus může vést ke změně dříve automaticky generovaných názvů používaných ve funkcích, jako jsou materializovaná zobrazení.
- Kontroly tabulek s
CHAR
poli typu jsou nyní vždy vycpány: tabulky Delta, některé tabulky JDBC a externí zdroje dat ukládají data CHAR v necpdované podobě. Při čtení teď Databricks rozdělí data mezerami na deklarovanou délku, aby se zajistila správná sémantika. - Přetypování z BIGINT/DECIMAL na TIMESTAMP vyvolá výjimku pro přetečení hodnot: Databricks umožňuje přetypování z BIGINT a DECIMAL na TIMESTAMP tím, že považuje hodnotu za počet sekund z epochy Unixu. Databricks dříve vracela přetečení hodnot, ale teď vyvolá výjimku v případech přetečení. Slouží
try_cast
k vrácení hodnoty NULL místo výjimky. - Bylo vylepšeno provádění PySpark UDF tak, aby odpovídalo přesnému chování spouštění UDF na výpočetních prostředcích s jedním uživatelem: Provedli jsme následující změny:
- Funkce definované uživatelem s návratovým typem řetězce už implicitně nepřevádějí neřetězcové hodnoty na řetězce. Dříve by funkce definované uživatelem s návratovým typem
str
použily obálkustr(..)
na výsledek bez ohledu na skutečný datový typ vrácené hodnoty. - Funkce definované uživatelem s návratovými
timestamp
typy už implicitně nepoužijí převod časového pásma na časová razítka.
- Funkce definované uživatelem s návratovým typem řetězce už implicitně nepřevádějí neřetězcové hodnoty na řetězce. Dříve by funkce definované uživatelem s návratovým typem
Prostředí systému
Bezserverové výpočetní prostředí zahrnuje následující systémové prostředí:
- Operační systém: Ubuntu 22.04.3 LTS
- Python: 3.10.12
- Delta Lake: 3.1.0
Nainstalované knihovny Pythonu
Následující knihovny Pythonu se ve výchozím nastavení instalují na bezserverové výpočetní prostředky. Další závislosti je možné nainstalovat pomocí bočního panelu Prostředí . Viz Instalace závislostí poznámkového bloku.
Knihovna | Verze | Knihovna | Verze | Knihovna | Verze |
---|---|---|---|---|---|
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 |
backcall | 0.2.0 | krásnásoup4 | 4.11.1 | černý | 22.6.0 |
bělit | 4.1.0 | blinkr | 1.4 | boto3 | 1.24.28 |
botocore | 1.27.96 | cachetools | 5.3.2 | certifi | 2022.12.7 |
cffi | 1.15.1 | chardet | 4.0.0 | charset-normalizer | 2.0.4 |
kliknutí | 8.0.4 | Komunikace | 0.1.2 | obrysová křivka | 1.0.5 |
kryptografie | 39.0.1 | cyklista | 0.11.0 | Cython | 0.29.32 |
Připojení databricks | 14.3.1 | Databricks-sdk | 0.20.0 | dbus-python | 1.2.18 |
ladění | 1.6.7 | dekoratér | 5.1.1 | defusedxml | 0.7.1 |
distlib | 0.3.8 | docstring-to-markdown | 0,11 | vstupní body | 0,4 |
vykonávající | 0.8.3 | přehled omezujících vlastností | 1.1.1 | fastjsonschema | 2.19.1 |
filelock | 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-widgety | 1.0.0 | keyring | 23.5.0 | verizonsolver | 1.4.4 |
launchpadlib | 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 | špatně zamyšlení | 0.8.4 |
more-itertools | 8.10.0 | mypy-extensions | 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 | poznámkový blok | 6.5.2 |
notebook_shim | 0.2.2 | numpy | 1.23.5 | oauthlib | 3.2.0 |
balení | 23.2 | pandas | 1.5.3 | pandocfilters | 1.5.0 |
parso | 0.8.3 | pathspec | 0.10.3 | bábovka | 0.5.3 |
pexpect | 4.8.0 | pickleshare | 0.7.5 | Polštář | 9.4.0 |
jádro | 22.3.1 | platformdirs | 2.5.2 | plotly | 5.9.0 |
pluggy | 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 | čistý-eval | 0.2.2 | py4j | 0.10.9.7 |
pyarrow | 8.0.0 | pyarrow-hotfix | 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 | pyrsistent | 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 |
žádosti | 2.28.1 | lano | 1.7.0 | rsa | 4,9 |
s3transfer | 0.6.2 | scikit-learn | 1.1.1 | scipy | 1.10.0 |
seaborn | 0.12.2 | SecretStorage | 3.3.1 | Send2Trash | 1.8.0 |
setuptools | 65.6.3 | Šest | 1.16.0 | sniffio | 1.2.0 |
polévky | 2.3.2.post1 | ssh-import-id | 5,11 | stack-data | 0.2.0 |
statsmodels | 0.13.5 | houževnatost | 8.1.0 | terminado | 0.17.1 |
threadpoolctl | 2.2.0 | tinycss2 | 1.2.1 | tokenize-rt | 4.2.1 |
tomli | 2.0.1 | tornádo | 6.1 | vlastnosti | 5.7.1 |
typing_extensions | 4.4.0 | ujson | 5.4.0 | bezobslužné upgrady | 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 | kolo | 0.38.4 | widgetsnbextension | 3.6.1 |
yapf | 0.33.0 | Zipp | 1.0.0 |
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro