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
- Az API és az SQL-parancsok gyorsítótárazása nem támogatott
- A globális ideiglenes nézetek nem támogatottak
- A CREATE FÜGGVÉNY (külső) nem támogatott
- A Hive SerDe-táblák nem támogatottak
- A Hive-változók nem támogatottak
- input_file függvények elavultak
- Működésbeli változások
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ékEXCEPTION
)spark.sql.session.timeZone
(Az alapértelmezett értékEtc/UTC
)spark.sql.shuffle.partitions
(Az alapértelmezett értékauto
)
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:
- df.cache(), df.persist()
- df.unpersist()
- spark.catalog.cacheTable()
- spark.catalog.uncacheTable()
- spark.catalog.clearCache()
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ótstr(..)
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.
- 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
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
éssqlContext
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
- A Databricks Runtime for Machine Learning és az Apache Spark MLlib nem támogatott.
- A GPU-k nem támogatottak.
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?
- Hogyan határozza meg, hogy melyik kiszolgáló nélküli verziót futtatom?
- Hogyan kiszolgáló nélküli költségek becslése?
- Hogyan elemezni egy adott számítási feladat DBU-használatát?
- 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?
- Támogatja a kiszolgáló nélküli számítás a privát adattárat?
- Hogyan telepít kódtárakat a feladatfeladatokhoz?
- Csatlakozhatok egyéni adatforrásokhoz?
- Konfigurálhatom a kiszolgáló nélküli számítást a munkafolyamatokhoz a DAB-kkal?
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.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: