Partager via


Version 4 de l'environnement serverless

Cet article décrit les informations relatives à l’environnement système pour l’environnement serverless version 4.

Pour garantir la compatibilité de l’application, les charges de travail serverless utilisent une API versionnée, appelée version de l’environnement, qui reste compatible avec les versions de serveur plus récentes.

Vous pouvez sélectionner la version de l’environnement à l’aide du panneau latéral Environnement dans vos notebooks serverless. Consultez Sélectionner un environnement de base.

Nouvelles fonctionnalités et améliorations

Les nouvelles fonctionnalités et améliorations suivantes sont disponibles dans l’environnement serverless 4.

Prise en charge de Spark ML sur le calcul sans serveur

Le calcul serverless prend désormais en charge Spark ML dans PySpark (pyspark.ml) et MLflow pour Spark (mlflow.spark) dans l’environnement version 4. Pour le réglage des hyperparamètres sur le calcul serverless, Databricks recommande d’utiliser Optuna et Joblib Spark.

Les limitations suivantes s’appliquent lors de l’exécution de SparkML sur le calcul serverless :

  • La taille maximale du modèle est de 100 Mo.
  • La taille totale maximale des modèles en mémoire par session est de 1 Go.
  • L'entraînement du modèle d'arbre s'arrête en avance si la taille du modèle est sur le point de dépasser 100 Mo.
  • Les modèles SparkML suivants ne sont pas pris en charge :
    • DistributedLDAModel
    • FPGrowthModel

Les fonctions définies par l'utilisateur (UDF) Python scalaires prennent désormais en charge les identifiants de service

Les fonctions définies par l’utilisateur Python scalaire peuvent utiliser les informations d’identification du service catalogue Unity pour accéder en toute sécurité aux services cloud externes. Pour plus d’informations, consultez les identifiants de service dans les UDF Python scalaires.

PySpark et Spark Connect prennent désormais en charge l’API DataFrames df.mergeInto

PySpark et Spark Connect prennent désormais en charge l’API df.mergeInto , qui était auparavant disponible uniquement pour Scala.

Mises à jour d’API

L’environnement serverless 4 inclut les mises à jour d’API suivantes :

  • SPARK-50915 Ajouter getCondition et déprécier getErrorClass dans PySparkException
  • SPARK-50719 Prise en charge interruptOperation de PySpark
  • SPARK-50718 Prise en charge addArtifact(s) de PySpark
  • SPARK-49530 Prise en charge des sous-graphiques en secteurs pour le traçage avec PySpark
  • SPARK-50357 API de support Interrupt(Tag|All) pour PySpark
  • SPARK-51178 Déclencher une erreur PySpark appropriée au lieu de SparkConnectGrpcException
  • SPARK-51227 Correction de PySpark Connect _minimum_grpc_version à la version 1.67.0
  • SPARK-50778 Ajouter metadataColumn à PySpark DataFrame
  • SPARK-50311 API de support (add|remove|get|clear)Tag(s) pour PySpark
  • SPARK-50310 Ajouter un indicateur à désactiver DataFrameQueryContext pour PySpark
  • SPARK-50238 Ajouter la prise en charge des variantes dans pySpark UDFs/UDTFs/UDAFs et Python UC UDFs
  • SPARK-50183 Unifier les fonctions internes pour l’API Pandas et pySpark Plotting
  • SPARK-50170 Déplacer _invoke_internal_function_over_columns à pyspark.sql.utils
  • SPARK-50167 Améliorer les messages d'erreur de visualisation PySpark et les importations
  • SPARK-48961 Rendre le nommage des paramètres cohérent PySparkException avec la JVM
  • SPARK-49567 Utiliser classique au lieu de la vanille à partir de la base de code PySpark
  • SPARK-48755transformWithState Implémentation de base et ValueState prise en charge de PySpark
  • SPARK-48714 Implémenter DataFrame.mergeInto dans PySpark
  • SPARK-47365 Ajouter toArrow() une méthode DataFrame à PySpark
  • SPARK-48075 Vérification de type pour les fonctions PySpark avro
  • SPARK-46984 Enlever pyspark.copy_func
  • SPARK-46213 Présentation PySparkImportError de l’infrastructure d’erreurs
  • SPARK-46226 Migrer tout le reste RuntimeError dans l’infrastructure d’erreur PySpark
  • SPARK-45450 Corriger les imports en fonction de PEP8 : pyspark.pandas et pyspark (noyau)

Environnement du système

  • Système d’exploitation : Ubuntu 24.04.2 LTS
  • Python : 3.12.3
  • Databricks Connect : 17 (Databricks Connect est mis à jour en permanence dans la dernière version de l’environnement serverless. Exécutez pip list pour confirmer la version exacte dans votre environnement actuel.)
  • Scala : 2.13.16
  • JDK : 17

Bibliothèques Python installées

Pour reproduire l’environnement serverless 4 dans votre environnement virtuel Python local, téléchargez le fichier requirements-env-4.txt et exécutez pip install -r requirements-env-4.txt. Cette commande installe toutes les bibliothèques open source à partir de l’environnement serverless 4.

Library Version Library Version Library Version
types annotés 0.7.0 anyio 4.6.2 argon2-cffi 21.3.0
argon2-cffi-bindings 21.2.0 flèche 1.3.0 asttokens 2.0.5
astunparse 1.6.3 async-lru 2.0.4 attributs 24.3.0
commande automatique 2.2.2 azure-common 1.1.28 azure-core 1.34.0
azure-identity 1.20.0 azure-mgmt-core 1.5.0 azure-mgmt-web 8.0.0
azure-storage-blob 12.23.0 azure-storage-file-datalake 12.17.0 Babel 2.16.0
backports.tarfile 1.2.0 beautifulsoup4 4.12.3 noir 24.10.0
blanchir 6.2.0 clignotant 1.7.0 boto3 1.36.2
botocore 1.36.3 cachetools 5.5.1 certifi 2025.1.31
cffi 1.17.1 chardet 4.0.0 charset-normalizer 3.3.2
cliquer 8.1.7 cloudpickle 3.0.0 Communication 0.2.1
contourpy 1.3.1 cryptographie 43.0.3 cycliste 0.11.0
Cython 3.0.12 databricks-connect 17.2.3 databricks-sdk 0.49.0
dbus-python 1.3.2 debugpy 1.8.11 décorateur 5.1.1
defusedxml 0.7.1 Deprecated 1.2.13 distlib 0.3.9
docstring-to-markdown 0.11 Exécution 0.8.3 aperçu des facettes 1.1.1
fastapi 0.115.12 fastjsonschema 2.21.1 verrou de fichier 3.18.0
fonttools 4.55.3 fqdn 1.5.1 fsspec 2023.5.0
gitdb (base de données Git) 4.0.11 GitPython 3.1.43 google-api-core 2.20.0
google-auth 2.40.0 google-cloud-core 2.4.3 Google Cloud Storage 3.1.0
google-crc32c 1.7.1 google-reprise-media 2.7.2 googleapis-common-protos 1.65.0
grpcio 1.67.0 grpcio-status 1.67.0 h11 0.14.0
httpcore 1.0.2 httplib2 0.20.4 httpx 0.27.0
idna 3.7 importlib-metadata 6.6.0 importlib_resources 6.4.0
infléchir 7.3.1 iniconfig 1.1.1 ipyflow-core 0.0.209
ipykernel 6.29.5 ipython 8.30.0 ipython-genutils 0.2.0
ipywidgets 7.8.1 isodate 0.6.1 isoduration 20.11.0
jaraco.context 5.3.0 jaraco.functools 4.0.1 jaraco.text 3.12.1
jedi 0.19.2 Jinja2 3.1.5 jmespath 1.0.1
joblib 1.4.2 json5 0.9.25 jsonpointer 3.0.0
jsonschema 4.23.0 jsonschema-spécifications 2023.7.1 jupyter-events 0.10.0
jupyter-lsp 2.2.0 jupyter_client 8.6.3 jupyter_core 5.7.2
jupyter_server 2.14.1 jupyter_server_terminals 0.4.4 jupyterlab 4.3.4
jupyterlab-pygments 0.1.2 jupyterlab-widgets 1.0.0 jupyterlab_server 2.27.3
kiwisolver 1.4.8 launchpadlib 1.11.0 lazr.restfulclient 0.14.6
lazr.uri 1.0.6 markdown-it-py 2.2.0 MarkupSafe 3.0.2
matplotlib 3.10.0 matplotlib-inline 0.1.7 Mccabe 0.7.0
mdurl 0.1.0 désaccorder 2.0.4 mlflow-skinny 2.22.0
mmh3 5.1.0 more-itertools 10.3.0 msal 1.32.3
msal-extensions 1.3.1 mypy-extensions 1.0.0 nbclient 0.8.0
nbconvert 7.16.4 nbformat 5.10.4 nest-asyncio 1.6.0
nodeenv 1.9.1 notebook 7.3.2 notebook_shim 0.2.3
numpy 2.1.3 oauthlib 3.2.2 opentelemetry-api 1.32.1
opentelemetry-sdk 1.32.1 opentelemetry-semantic-conventions 0,53b1 Remplace 7.4.0
emballage 24.1 Pandas 2.2.3 pandocfilters 1.5.0
parso 0.8.4 pathspec 0.10.3 dupe 1.0.1
pexpect 4.8.0 oreiller 11.1.0 pépin 25.0.1
platformdirs 3.10.0 tracé 5.24.1 enfiché 1.5.0
prometheus_client 0.21.0 prompt-toolkit 3.0.43 proto-plus 1.26.1
protobuf 5.29.4 psutil 5.9.0 psycopg2 2.9.3
ptyprocess 0.7.0 pure-eval 0.2.2 py4j 0.10.9.9
pyarrow 19.0.1 pyasn1 0.4.8 pyasn1-modules 0.2.8
pyccolo 0.0.71 pycparser 2.21 pydantic 2.10.6
pydantic_core 2.27.2 pyflakes 3.2.0 Pygments 2.15.1
PyGObject 3.48.2 pyiceberg 0.9.0 PyJWT 2.10.1
pyodbc 5.2.0 pyparsing 3.2.0 pyright 1.1.394
pyspark 4.0.0+databricks.connect.17.2.3 pytest 8.3.5 python-dateutil 2.9.0.post0
python-json-logger 3.2.1 python-lsp-jsonrpc 1.1.2 serveur LSP pour Python 1.12.0
pytoolconfig 1.2.6 pytz 2024.1 PyYAML 6.0.2
pyzmq 26.2.0 référencement 0.30.2 requêtes 2.32.3
RFC3339-validateur 0.1.4 rfc3986-validator 0.1.1 riche 13.9.4
corde 1.12.0 rpds-py 0.22.3 Rsa 4.9.1
s3transfer 0.11.3 scikit-learn 1.6.1 scipy (bibliothèque Python pour le calcul scientifique) 1.15.1
seaborn 0.13.2 Send2Trash 1.8.2 setuptools 74.0.0
Six 1.16.0 smmap 5.0.0 sniffio 1.3.0
sortedcontainers 2.4.0 soupsieve 2.5 sqlparse 0.5.3
ssh-import-id 5.11 stack-data 0.2.0 starlette 0.46.2
statsmodels, une bibliothèque Python pour la modélisation statistique 0.14.4 strictyaml 1.7.3 ténacité 9.0.0
terminé 0.17.1 threadpoolctl 3.5.0 tinycss2 1.4.0
tokenize_rt 6.1.0 tomli 2.0.1 tornade 6.4.2
Traitlets 5.14.3 typeguard 4.3.0 types-python-dateutil 2.9.0.20241206
typing_extensions 4.12.2 tzdata 2024.1 ujson 5.10.0
mises à jour automatisées 0.1 uri-template 1.3.0 urllib3 2.3.0
uvicorn 0.34.2 virtualenv 20.29.3 wadllib 1.3.6
wcwidth 0.2.5 webcolores 24.11.1 webencodings 0.5.1
websocket-client 1.8.0 whatthepatch 1.0.2 roue 0.45.1
widgetsnbextension 3.6.6 enveloppé 1.17.0 yapf 0.40.2
zipp 3.21.0 zstandard 0.23.0

Bibliothèques Java et Scala installées (Scala 2.13)

ID de groupe ID d’artefact Version
com.databricks databricks-connect_2.13 17.2.0
com.fasterxml.jackson.core jackson-annotations 2.15.2
com.fasterxml.jackson.core jackson-core 2.15.2
com.fasterxml.jackson.core jackson-databind 2.15.2
com.lihaoyi ammonite-compiler-interface_2.13.16 3.0.2
com.lihaoyi ammonite-compiler_2.13.16 3.0.2
com.lihaoyi ammonite-interp-api_2.13.16 3.0.2
com.lihaoyi ammonite-interp_2.13.16 3.0.2
com.lihaoyi ammonite-repl-api_2.13.16 3.0.2
com.lihaoyi ammonite-repl_2.13.16 3.0.2
com.lihaoyi ammonite-runtime_2.13.16 3.0.2
com.lihaoyi ammonite-util_2.13 3.0.2
com.lihaoyi fansi_2.13 0.5.0
com.lihaoyi os-lib_2.13 0.11.3
com.lihaoyi pprint_2.13 0.9.0
com.lihaoyi scalaparse_2.13 3.1.1
org.apache.logging.log4j log4j-api 2.20.0
org.apache.logging.log4j log4j-core 2.20.0
org.json4s json4s-core_2.13 4.0.7
org.json4s json4s-jackson_2.13 4.0.7
sh.almond channels_2.13 0.14.1-1
sh.almond interpréteur-api_2.13 0.14.1-1
sh.almond interpreter_2.13 0.14.1-1
sh.almond jupyter-api_2.13 0.14.1-1
sh.almond kernel_2.13 0.14.1-1
sh.almond logger_2.13 0.14.1-1
sh.almond protocol_2.13 0.14.1-1
sh.almond scala-interpreter_2.13.16 0.14.1-1
sh.almond scala-kernel_2.13.16 0.14.1-1
sh.almond shared-directives_2.13 0.14.1-1