Megosztás a következőn keresztül:


Kiszolgáló nélküli számítási kibocsátási megjegyzések

Fontos

Ez a funkció a nyilvános előzetes verzióban érhető el. A jogosultságról és az engedélyezésről további információt a kiszolgáló nélküli számítási nyilvános előzetes verzió engedélyezése című témakörben talál.

Ez a cikk ismerteti a jegyzetfüzetek és munkafolyamatok kiszolgáló nélküli számításán jelenleg elérhető és hamarosan elérhető funkciókat és viselkedéseket.

A Databricks rendszeresen kiadja a kiszolgáló nélküli számítás frissítéseit. Minden felhasználó ugyanazokat a frissítéseket kapja, és rövid idő alatt kerülnek bevezetésre. Lásd: Hogyan jelennek meg a kiadások?.

Közelgő viselkedésváltozások

Ez a szakasz a következő kiszolgáló nélküli számítási verzióban megjelenő viselkedési változásokat emeli ki. Amikor a módosítások éles környezetbe kerülnek, azok bekerülnek a kibocsátási megjegyzésekbe.

Kibocsátási megjegyzések

Ez a szakasz a kiszolgáló nélküli számítás kibocsátási megjegyzéseit tartalmazza. A kibocsátási megjegyzések év és hét szerint vannak rendszerezve. A kiszolgáló nélküli számítás mindig az itt felsorolt legújabb kiadású verzióval fut.

Kiszolgáló nélküli számítási verzió: 2024.15

2024. április 15.

A 2024.15-ös kiszolgáló nélküli számítási verziót éles környezetben adták ki. Ez a kezdeti kiszolgáló nélküli számítási verzió, amely nagyjából megfelel a Databricks Runtime 14.3-nak bizonyos módosításokkal, amelyek bizonyos nem kiszolgáló nélküli és örökölt funkciók támogatását megszüntetik.

Ez a verzió a következő frissítéseket tartalmazza:

Támogatott Spark-konfigurációs paraméterek

A Spark konfigurációjának kiszolgáló nélküli számításon való automatizálásához a Databricks eltávolította a legtöbb Spark-konfiguráció manuális beállításának támogatását. Manuálisan csak a következő Spark-konfigurációs paramétereket állíthatja be manuálisan:

  • spark.sql.legacy.timeParserPolicy (Az alapértelmezett érték EXCEPTION)
  • spark.sql.session.timeZone (Az alapértelmezett érték Etc/UTC)
  • spark.sql.shuffle.partitions (Az alapértelmezett érték auto)

A kiszolgáló nélküli számítási feladatok futtatása sikertelen lesz, ha olyan Spark-konfigurációt állít be, amely nem szerepel ebben a listában.

Az API és az SQL-parancsok gyorsítótárazása nem támogatott

A Dataframe és az SQL Cache API-k használata nem támogatott. Ezen API-k vagy SQL-parancsok bármelyikének használata kivételt eredményez.

Nem támogatott API-k:

Nem támogatott SQL-parancsok:

A globális ideiglenes nézetek nem támogatottak

A globális ideiglenes nézetek létrehozása nem támogatott. Az alábbi parancsok bármelyikének használata kivételt eredményez:

Ehelyett a Databricks azt javasolja, hogy munkamenet-ideiglenes nézeteket használjon, vagy olyan táblákat hozzon létre, ahol munkamenetek közötti adatátadásra van szükség.

A CREATE FÜGGVÉNY (külső) nem támogatott

A CREATE FÜGGVÉNY (külső) parancs nem támogatott. A parancs használata kivételt eredményez.

Ehelyett a Databricks a CREATE FÜGGVÉNY (SQL és Python) használatát javasolja az UDF-ek létrehozásához.

A Hive SerDe-táblák nem támogatottak

A Hive SerDe-táblák nem támogatottak. Emellett nem támogatott a hive SerDe-táblába adatokat betöltő LOAD DATA parancs. A parancs használata kivételt eredményez.

Az adatforrások támogatása az AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT és XML formátumra korlátozódik.

A Hive-változók nem támogatottak

A hive változók (például ${env:var}, ${configName}és ${system:var}spark.sql.variable) vagy a ${var} szintaxist használó konfigurációs változóhivatkozások nem támogatottak. A Hive-változók használata kivételt eredményez.

Ehelyett használja a DEKLARÁLT VÁLTOZÓ, a SET VARIABLE és az SQL-munkamenet változóinak hivatkozásait és paraméterjelölőit ('?', vagy ':var') a munkamenet állapotának deklarálásához, módosításához és hivatkozásához. Az IDENTIFIER záradékkal számos esetben paraméterezheti az objektumneveket.

input_file függvények elavultak

A input_file_name(), input_file_block_length() és input_file_block_start() függvény elavult. Ezeknek a függvényeknek a használata erősen elriasztja őket.

Ehelyett használja a fájl metaadatainak oszlopát a fájl metaadatainak lekéréséhez.

Működésbeli változások

A kiszolgáló nélküli számítási 2024.15-ös verzió a következő viselkedési változásokat tartalmazza:

  • unhex(hexStr) hibajavítás: A függvény használatakor a unhex(hexStr) hexStr mindig egy egész bájtra van kipárnázva. Korábban az unhex függvény figyelmen kívül hagyta az első fél bájtot. Például: most a következő helyett állítja elő x'0ABC' a következőtx'BC': unhex('ABC') .
  • Az automatikusan létrehozott oszlopaliasok mostantól stabilak: Ha egy kifejezés eredményére felhasználó által megadott oszlop alias nélkül hivatkozik, ez az automatikusan létrehozott alias stabil lesz. Az új algoritmus a korábban automatikusan létrehozott nevek módosítását eredményezheti olyan funkciókban, mint a materializált nézetek.
  • A típusmezőkkel végzett CHAR táblavizsgálatok mostantól mindig ki vannak jelölve: a Delta-táblák, bizonyos JDBC-táblák és külső adatforrások nem párnázott formában tárolják a CHAR-adatokat. Olvasáskor a Databricks mostantól a deklarált hosszúságú szóközökkel fogja kipárnázni az adatokat a helyes szemantikához.
  • A BIGINT/DECIM-ről az IDŐBÉLYEGre leadott értékek kivételt képeznek a túlcsordult értékek esetében: a Databricks lehetővé teszi a BIGINT-ből és a DEC-ből az IDŐBÉLYEGbe történő öntést úgy, hogy az értéket a Unix-korszak másodperceinek számaként kezeli. Korábban a Databricks túlcsordult értékeket adott vissza, de most kivételt eredményez a túlcsordulás esetén. Null try_cast értéket ad vissza kivétel helyett.
  • A PySpark UDF végrehajtása továbbfejlesztve lett, hogy megfeleljen az egyfelhasználós számítás UDF-végrehajtásának pontos viselkedésének: A következő módosítások történtek:
    • A sztring típusú UDF-ek többé nem konvertálják implicit módon a nem sztringértékeket sztringekké. Korábban a visszatérési str típusú UDF-ek burkolót str(..) alkalmaztak az eredményre, függetlenül a visszaadott érték tényleges adattípusától.
    • A visszatérési típusokkal rendelkező timestamp UDF-ek többé nem alkalmazzák implicit módon az időzónák időbélyegekké való konvertálását.

Rendszerkörnyezet

A kiszolgáló nélküli számítás a következő rendszerkörnyezetet tartalmazza:

  • Operációs rendszer: Ubuntu 22.04.3 LTS
  • Python: 3.10.12
  • Delta Lake: 3.1.0

Telepített Python-kódtárak

Könyvtár Verzió Könyvtár Verzió Könyvtár Verzió
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 beautifulsoup4 4.11.1 fekete 22.6.0
fehérítő 4.1.0 villogó 1.4 boto3 1.24.28
botocore 1.27.96 cachetools 5.3.2 minősítés 2022.12.7
cffi 1.15.1 karakterkészlet 4.0.0 charset-normalizer 2.0.4
kattintás 8.0.4 Comm 0.1.2 contourpy 1.0.5
kriptográfia 39.0.1 biciklista 0.11.0 Cython 0.29.32
databricks-connect 14.3.1 databricks-sdk 0.20.0 dbus-python 1.2.18
hibakeresés 1.6.7 lakberendező 5.1.1 defusedxml 0.7.1
distlib 0.3.8 docstring-to-markdown 0,11 belépési pontok 0,4
Végrehajtó 0.8.3 aspektusok áttekintése 1.1.1 fastjsonschema 2.19.1
filelock 3.13.1 betűtípusok 4.25.0 google-hitelesítés 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-widgetek 1.0.0 kulcstartó 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 jegyzetfüzet 6.5.2
notebook_shim 0.2.2 numpy 1.23.5 oauthlib 3.2.0
csomagolás 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 Párna 9.4.0
mag 22.3.1 platformdirs 2.5.2 ábrázolás 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
kérelmek 2.28.1 kötél 1.7.0 Rsa 4.9
s3transfer 0.6.2 scikit-learn 1.1.1 scipy 1.10.0
tengeri 0.12.2 SecretStorage 3.3.1 Send2Trash 1.8.0
setuptools 65.6.3 Hat 1.16.0 sniffio 1.2.0
levessieve 2.3.2.post1 ssh-import-id 5,11 veremadatok 0.2.0
statsmodels 0.13.5 Kitartás 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ádó 6.1 árulók 5.7.1
typing_extensions 4.4.0 ujson 5.4.0 felügyelet nélküli frissítések 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 kerék 0.38.4 widgetsnbextension 3.6.1
yapf 0.33.0 Zipp 1.0.0

Korlátozások

A kiszolgáló nélküli számítás a megosztott számítási architektúrán alapul. A megosztott számításból örökölt legfontosabb korlátozások az alábbiakban láthatók, valamint további kiszolgáló nélküli korlátozások. A megosztott számítási korlátozások teljes listájáért tekintse meg a Unity Catalog számítási hozzáférési módra vonatkozó korlátozásait.

Általános korlátozások

  • A Scala és az R nem támogatott.
  • Az SQL írása csak az ANSI SQL-t támogatja.
  • A Spark RDD API-k nem támogatottak.
  • Spark-környezet (sc), spark.sparkContextés sqlContext nem támogatott.
  • A DBFS nem érhető el.
  • A Databricks Container Services nem támogatott.
  • A webes terminál nem támogatott.
  • Egyetlen lekérdezés sem futtatható 48 óránál tovább.
  • Külső adatforrásokhoz való csatlakozáshoz a Unity Katalógust kell használnia. Külső helyeken érheti el a felhőtárhelyet.
  • Az adatforrások támogatása az AVRO, BINARYFILE, CSV, DELTA, JSON, KAFKA, ORC, PARQUET, ORC, TEXT és XML formátumra korlátozódik.
  • A felhasználó által definiált függvények (UDF-ek) nem tudják elérni az internetet.
  • Az egyes sorok mérete nem haladhatja meg a 128 MB maximális méretet.
  • A Spark felhasználói felülete nem érhető el. Ehelyett használja a lekérdezésprofilt a Spark-lekérdezésekkel kapcsolatos információk megtekintéséhez. Lásd: Lekérdezési profil.
  • A Databricks-végpontokat használó Python-ügyfelek SSL-ellenőrzési hibákba ütközhetnek, például "CERTIFICATE_VERIFY_FAILED". A hibák megkerüléséhez konfigurálja úgy az ügyfelet, hogy megbízzanak a fájlban található ca-fájlban /etc/ssl/certs/ca-certificates.crt. Futtassa például a következő parancsot egy kiszolgáló nélküli jegyzetfüzet vagy feladat elején: import os; os.environ['SSL_CERT_FILE'] = '/etc/ssl/certs/ca-certificates.crt'
  • A munkaterületek közötti API-kérések nem támogatottak.

Streamelési korlátozások

  • A strukturált streamelési lekérdezésekhez szükség van a query.awaitTermination() lekérdezés befejezésének biztosítására.
  • Az alapértelmezett vagy az időalapú triggerintervallumok nem támogatottak. Kizárólag az Trigger.AvailableNow támogatott. Lásd: Strukturált streamelési eseményindítók időközeinek konfigurálása.
  • A megosztott hozzáférési módban történő streamelésre vonatkozó összes korlátozás is érvényes. Lásd a Unity Catalog megosztott hozzáférési módjának streamelési korlátozásait.

Gépi tanulási korlátozások

Jegyzetfüzetek korlátozásai

  • A jegyzetfüzetek 8 GB memóriához férhetnek hozzá, ami nem konfigurálható.
  • A jegyzetfüzet-hatókörű kódtárak nem gyorsítótárazva vannak a fejlesztési munkamenetekben.
  • A TEMP-táblák és -nézetek megosztása jegyzetfüzetek felhasználók közötti megosztásakor nem támogatott.
  • Az automatikus kiegészítés és a változókezelő nem támogatott a jegyzetfüzetekben lévő adatkeretekhez.

Munkafolyamat korlátozásai

  • A munkafolyamatok kiszolgáló nélküli számításának illesztőprogram-mérete jelenleg rögzített, és nem módosítható.
  • A tevékenységnaplók nem különíthetők el feladatfuttatásonként. A naplók több tevékenység kimenetét tartalmazzák.
  • A feladattárak nem támogatottak a jegyzetfüzet-tevékenységekhez. Használjon inkább jegyzetfüzet-hatókörű kódtárakat. Lásd: Jegyzetfüzet-hatókörön belüli Python-kódtárak.

Számításspecifikus korlátozások

A következő számításspecifikus funkciók nem támogatottak:

  • Számítási szabályzatok
  • Számítási hatókörű init-szkriptek
  • Számítási hatókörű kódtárak, beleértve az egyéni adatforrásokat és a Spark-bővítményeket. Használjon inkább jegyzetfüzet-hatókörű kódtárakat .
  • Számítási szintű adathozzáférési konfigurációk, beleértve a példányprofilokat is. Ennek következtében a táblák és fájlok elérése HMS-en keresztül felhőbeli útvonalakon vagy beágyazott hitelesítő adatokkal nem rendelkező DBFS-csatlakoztatásokkal nem fog működni.
  • Példánykészletek
  • Számítási eseménynaplók
  • Apache Spark számítási konfigurációk és környezeti változók

Gyakori kérdések (GYIK)

Hogyan jelennek meg a kiadások?

A kiszolgáló nélküli számítás egy verzió nélküli termék, ami azt jelenti, hogy a Databricks automatikusan frissíti a kiszolgáló nélküli számítási futtatókörnyezetet, hogy támogassa a platform fejlesztéseit és frissítéseit. Minden felhasználó ugyanazokat a frissítéseket kapja, és rövid idő alatt kerülnek bevezetésre.

Hogyan határozza meg, hogy melyik kiszolgáló nélküli verziót futtatom?

A kiszolgáló nélküli számítási feladatok mindig a legújabb futtatókörnyezeti verzióban futnak. Lásd a legújabb verzió kibocsátási megjegyzéseit .

Hogyan kiszolgáló nélküli költségek becslése?

A Databricks egy reprezentatív vagy adott számítási feladat futtatását és teljesítménymérését, majd a számlázási rendszer táblázatának elemzését javasolja. Lásd: Számlázható használati rendszer táblareferenciája.

Hogyan elemezni egy adott számítási feladat DBU-használatát?

Egy adott számítási feladat költségeinek megtekintéséhez kérdezze le a rendszertáblát system.billing.usage . Tekintse meg a kiszolgáló nélküli számítási költségek monitorozását a mintalekérdezések esetében, és töltse le a költségmegfigyelési irányítópultot.

Nem engedélyeztem a kiszolgáló nélküli számítást munkafolyamatokhoz és jegyzetfüzetekhez, miért látom a kiszolgáló nélküli munkafolyamatok számlázási rekordjait?

A Lakehouse monitorozása és a prediktív optimalizálás a kiszolgáló nélküli munkafolyamatok termékváltozatában is kiszámlázva van.

A kiszolgáló nélküli számítási előzetes verziót nem kell engedélyezni a két funkció használatához.

Támogatja a kiszolgáló nélküli számítás a privát adattárat?

Az adattárak lehetnek privátak vagy hitelesítést igényelnek. Biztonsági okokból előre aláírt URL-cím szükséges a hitelesített adattárak eléréséhez.

Hogyan telepít kódtárakat a feladatfeladatokhoz?

A Databricks környezetek használatát javasolja a munkafolyamatokhoz tartozó kódtárak telepítéséhez és kezeléséhez. Lásd: Környezetek és függőségek konfigurálása nem jegyzetfüzet-tevékenységekhez.

Csatlakozhatok egyéni adatforrásokhoz?

Nem, csak a Lakehouse Federationt használó források támogatottak. Lásd: Támogatott adatforrások.

Konfigurálhatom a kiszolgáló nélküli számítást a munkafolyamatokhoz a DAB-kkal?

Igen, a DAB-k kiszolgáló nélküli számítást használó feladatok konfigurálására használhatók. Lásd: Kiszolgáló nélküli számítást használó feladat konfigurálása.