Delen via


Releaseopmerkingen voor serverloze compute

In dit artikel worden de functies en het gedrag uitgelegd die momenteel beschikbaar en gepland zijn op serverloze berekeningen voor notebooks en werkstromen.

Zie Verbinding maken met serverloze berekeningen voor meer informatie over serverloze berekeningen.

Databricks brengt regelmatig updates uit voor serverloze berekeningen, en voert automatisch een upgrade uit van de serverloze rekenruntime om verbeteringen en upgrades naar het platform te ondersteunen. Alle gebruikers krijgen dezelfde updates, die gedurende een korte periode worden geïmplementeerd.

Toekomstige gedragswijzigingen

In deze sectie worden gedragswijzigingen gemarkeerd die beschikbaar zijn in de volgende serverloze rekenversie. Wanneer de wijzigingen naar productie worden gepusht, worden ze toegevoegd aan de releaseopmerkingen.

Opmerkingen bij de release

Deze sectie bevat releaseopmerkingen voor serverloze berekeningen. Releaseopmerkingen zijn ingedeeld op jaar en week van het jaar. Serverloze compute wordt altijd uitgevoerd met behulp van de laatst uitgebrachte versie die hier wordt vermeld.

Versie 2024.30

23 juli 2024

Nieuwe functies

  • Ondersteuning voor stercomponent (*) in de WHERE component: U kunt nu de stercomponent (*) in de WHERE component gebruiken om te verwijzen naar alle kolommen uit de SELECT lijst. Bijvoorbeeld: SELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*).

Wijzigingen

  • Verbeterd foutherstel voor JSON-parsering: de JSON-parser die wordt gebruikt voor from_json() expressies van JSON-pad, herstelt nu sneller van onjuiste syntaxis, wat resulteert in minder gegevensverlies.

    Wanneer u een ongeldige JSON-syntaxis in een structveld, een matrixwaarde, een kaartsleutel of een toewijzingswaarde tegenkomt, wordt de JSON-parser nu alleen geretourneerd NULL voor het onleesbare veld, de sleutel of het element. Volgende velden, sleutels of elementen worden correct geparseerd. Vóór deze wijziging heeft de JSON-parser de matrix, de struct of de kaart verlaten en geretourneerd NULL voor de resterende inhoud.

Versie 2024.15

15 april 2024

Dit is de eerste serverloze rekenversie. Deze versie komt ongeveer overeen met Databricks Runtime 14.3 met enkele wijzigingen die ondersteuning voor sommige niet-serverloze en verouderde functies verwijderen.

Ondersteunde Spark-configuratieparameters

Databricks heeft ondersteuning voor het handmatig instellen van de meeste Spark-configuraties verwijderd om de configuratie van Spark op serverloze berekeningen te automatiseren. U kunt alleen de volgende Spark-configuratieparameters handmatig instellen:

  • spark.sql.legacy.timeParserPolicy (standaardwaarde is EXCEPTION)
  • spark.sql.session.timeZone (standaardwaarde is Etc/UTC)
  • spark.sql.shuffle.partitions (standaardwaarde is auto)
  • spark.sql.ansi.enabled (standaardwaarde is true)

De taak wordt uitgevoerd op serverloze berekeningen mislukt als u een Spark-configuratie instelt die niet in deze lijst staat.

Cache-API- en SQL-opdrachten worden niet ondersteund

Het gebruik van Dataframe- en SQL-cache-API's wordt niet ondersteund. Als u een van deze API's of SQL-opdrachten gebruikt, resulteert dit in een uitzondering.

Niet-ondersteunde API's:

Niet-ondersteunde SQL-opdrachten:

Globale tijdelijke weergaven worden niet ondersteund

Het maken van globale tijdelijke weergaven wordt niet ondersteund. Als u een van deze opdrachten gebruikt, resulteert dit in een uitzondering:

In plaats daarvan raadt Databricks aan om tijdelijke sessieweergaven te gebruiken of tabellen te maken waarbij het doorgeven van gegevens tussen sessies vereist is.

CREATE FUNCTION (extern) wordt niet ondersteund

De opdracht CREATE FUNCTION (Extern) wordt niet ondersteund. Als u deze opdracht gebruikt, resulteert dit in een uitzondering.

In plaats daarvan raadt Databricks het gebruik van CREATE FUNCTION (SQL en Python) aan om UDF's te maken.

Hive SerDe-tabellen worden niet ondersteund

Hive SerDe-tabellen worden niet ondersteund. Daarnaast wordt de bijbehorende opdracht LOAD DATA waarmee gegevens in een Hive SerDe-tabel worden geladen, niet ondersteund. Als u de opdracht gebruikt, resulteert dit in een uitzondering.

Ondersteuning voor gegevensbronnen is beperkt tot AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEKST en XML.

Hive-variabelen worden niet ondersteund

Hive-variabelen (bijvoorbeeld ${env:var}, ${system:var}${configName}en ) spark.sql.variableof verwijzingen naar configuratievariabelen met behulp van de ${var} syntaxis worden niet ondersteund. Het gebruik van Hive-variabelen resulteert in een uitzondering.

Gebruik in plaats daarvan DECLARE VARIABLE, SET VARIABLE en SQL-sessievariabeleverwijzingen en parametermarkeringen ('?', of ':var') om de sessiestatus te declareren, te wijzigen en te verwijzen. U kunt ook de ID-component gebruiken om objectnamen in veel gevallen te parameteriseren.

input_file functies zijn afgeschaft

De functies input_file_name(), input_file_block_length()en input_file_block_start() zijn afgeschaft. Het gebruik van deze functies wordt sterk afgeraden.

Gebruik in plaats daarvan de kolom met bestandsmetagegevens om metagegevens van bestanden op te halen.

Gedragswijzigingen

Serverloze compute-versie 2024.15 bevat de volgende gedragswijzigingen:

  • unhex(hexStr) bug fix: Wanneer u de unhex(hexStr) functie gebruikt, wordt hexStr altijd opgevuld naar een hele byte. Voorheen negeerde de onhexe functie de eerste halve byte. Bijvoorbeeld: unhex('ABC') produceert x'0ABC' nu in plaats van x'BC'.
  • Automatisch gegenereerde kolomaliassen zijn nu stabiel: wanneer het resultaat van een expressie wordt verwezen zonder een door de gebruiker opgegeven kolomalias, is deze automatisch gegenereerde alias nu stabiel. Het nieuwe algoritme kan leiden tot een wijziging van de eerder automatisch gegenereerde namen die worden gebruikt in functies zoals gerealiseerde weergaven.
  • Tabelscans met CHAR typevelden worden nu altijd opgevuld: Delta-tabellen, bepaalde JDBC-tabellen en externe gegevensbronnen slaan CHAR-gegevens op in niet-opgevulde vorm. Wanneer u leest, worden de gegevens nu door Databricks opgeslagen met spaties naar de gedeclareerde lengte om de juiste semantiek te garanderen.
  • Casts from BIGINT/DECIMAL to TIMESTAMP throw an exception for overflowed values: Databricks allows casting from BIGINT and DECIMAL to TIMESTAMP by treating the value as the number of seconds from the Unix epoch. Voorheen retourneerde Databricks overloopwaarden, maar genereert nu een uitzondering in gevallen van overloop. Gebruik try_cast dit om NULL te retourneren in plaats van een uitzondering.
  • PySpark UDF-uitvoering is verbeterd zodat deze overeenkomt met het exacte gedrag van UDF-uitvoering op rekenkracht van één gebruiker: De volgende wijzigingen zijn aangebracht:
    • UDF's met een tekenreeks retourtype converteren niet langer impliciet niet-tekenreekswaarden naar tekenreeksen. Voorheen zouden UDF's met een retourtype van str een wrapper worden str(..) toegepast op het resultaat, ongeacht het werkelijke gegevenstype van de geretourneerde waarde.
    • UDF's met timestamp retourtypen passen een tijdzoneconversie niet meer impliciet toe op tijdstempels.

Systeemomgeving

Serverloze berekening bevat de volgende systeemomgeving:

  • Besturingssysteem: Ubuntu 22.04.3 LTS
  • Python: 3.10.12
  • Delta Lake: 3.1.0

Geïnstalleerde Python-bibliotheken

De volgende Python-bibliotheken worden standaard geïnstalleerd op serverloze berekeningen. Er kunnen extra afhankelijkheden worden geïnstalleerd met behulp van het deelvenster Omgevingszijde . Zie Notebook-afhankelijkheden installeren.

Bibliotheek Versie Bibliotheek Versie Bibliotheek Versie
anyio 3.5.0 argon2-cffi 21.3.0 argon2-cffi-bindingen 21.2.0
asttokens 2.0.5 astunparse 1.6.3 attrs 22.1.0
backcall 0.2.0 beautifulsoup4 4.11.1 zwart 22.6.0
bleken 4.1.0 oogklep 1.4 boto3 1.24.28
botocore 1.27.96 cachetools 5.3.2 certifi 2022.12.7
cffiffi 1.15.1 chardet 4.0.0 charset-normalizer 2.0.4
klikken 8.0.4 comm 0.1.2 contourpy 1.0.5
cryptografie 39.0.1 wielrijder 0.11.0 Cython 0.29.32
databricks-connect 14.3.1 databricks-sdk 0.20.0 dbus-python 1.2.18
foutopsporing 1.6.7 decorateur 5.1.1 defusedxml 0.7.1
distlib 0.3.8 docstring-to-markdown 0,11 invoerpunten 0,4
Uitvoeren 0.8.3 facets-overview 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-widgets 1.0.0 sleutelhanger 23.5.0 kiwisolver 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 mistune 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 notebook 6.5.2
notebook_shim 0.2.2 numpy 1.23.5 oauthlib 3.2.0
verpakking 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 Kussen 9.4.0
pit 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 pure-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
requests 2.28.1 touw 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 Zes 1.16.0 sniffio 1.2.0
soepsieve 2.3.2.post1 ssh-import-id 5,11 stack-data 0.2.0
statsmodels 0.13.5 vasthoudendheid 8.1.0 terminado 0.17.1
threadpoolctl 2.2.0 tinycss2 1.2.1 tokenize-rt 4.2.1
tomli 2.0.1 tornado 6.1 traitlets 5.7.1
typing_extensions 4.4.0 ujson 5.4.0 upgrades zonder toezicht 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 wiel 0.38.4 widgetsnbextension 3.6.1
yapf 0.33.0 Zipp 1.0.0