Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Cet article explique les fonctionnalités et les comportements actuellement disponibles et à venir dans le calcul serverless pour les notebooks et les travaux.
Pour plus d’informations sur le calcul serverless, consultez Se connecter à un calcul serverless.
Azure Databricks publie régulièrement des mises à jour vers le calcul serverless, mettant automatiquement à niveau le runtime de calcul serverless pour prendre en charge les améliorations et les mises à niveau vers la plateforme. Tous les utilisateurs obtiennent les mêmes mises à jour, déployées sur une courte période.
versions de l'environnement sans serveur
Le calcul serverless pour les notebooks et les travaux utilise des versions d’environnement, qui fournissent une API cliente stable basée sur Spark Connect pour garantir la compatibilité des applications. Cela permet à Databricks de mettre à niveau le serveur indépendamment, de fournir des améliorations des performances, des améliorations de sécurité et des correctifs de bogues sans nécessiter de modifications de code apportées aux charges de travail.
Chaque version d’environnement inclut une version de Python spécifique et un ensemble de packages Python avec des versions définies. Databricks introduit de nouvelles fonctionnalités et correctifs dans la dernière version de l’environnement tout en appliquant des mises à jour de sécurité à toutes les versions d’environnement prises en charge.
Pour les notes de mise à jour relatives à l’environnement sans serveur, consultez la section Versions de l’environnement sans serveur.
Notes de publication
Cette section inclut des notes de publication pour le calcul serverless. Les notes de publication sont organisées par année et par semaine de l’année. Le calcul serverless s’exécute toujours à l’aide de la dernière version publiée ici.
- Version 17.3
- Version 17.2
- Version 17.1
- Environnement serverless version 4
- Version 17.0
- Les cibles de performances serverless sont en disponibilité générale
- Version 16.4
- Le mode performances est désormais configurable sur les travaux serverless
- Version 16.3
- Version 16.2
- Paramètre mémoire élevée disponible sur les notebooks serverless (préversion publique)
- Version 16.1
- Version 15.4
- Le JDK a changé de niveau de JDK 8 à JDK 17
- Version 15.1
- Version 14.3
Version 17.3
28 octobre 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 17.3 LTS.
Nouvelles fonctionnalités
LIMIT Prise en charge de toutes les CTEs récursives : vous pouvez désormais utiliser la
LIMIT ALLclause avec des expressions de table courantes récursives (RCTEs) pour spécifier explicitement qu’aucune limite de ligne ne doit être appliquée aux résultats de la requête. Consultez l'expression de table commune (CTE).L’ajout de fichiers dans les volumes catalogue Unity renvoie une erreur correcte : la tentative d’ajout à des fichiers existants dans les volumes catalogue Unity retourne désormais un message d’erreur plus descriptif pour vous aider à comprendre et à résoudre le problème.
st_dumpprise en charge des fonctions : vous pouvez désormais utiliser last_dumpfonction pour décomposer un objet géométrique en ses parties constituantes et retourner un ensemble de géométries plus simples. Consultez Fonctionst_dump.Les fonctions d’anneau intérieur de polygones sont désormais prises en charge : vous pouvez désormais utiliser les fonctions suivantes pour travailler avec des anneaux intérieurs de polygones :
-
st_numinteriorrings: Obtient le nombre de limites internes (anneaux) d’un polygone. Consultez Fonctionst_numinteriorrings. -
st_interiorringn: Extrayez la n-ième limite interne d’un polygone et retournez-la en tant que chaîne de ligne. Consultez Fonctionst_interiorringn.
-
EXECUTE IMMEDIATE utilisation d’expressions constantes : l’instruction
EXECUTE IMMEDIATEprend désormais en charge l’utilisation d’expressions constantes dans la chaîne de requête, ce qui permet une exécution SQL dynamique plus flexible. Consultez EXECUTE IMMEDIATE.Autoriser
spark.sql.files.maxPartitionBytesdans le calcul serverless : vous pouvez maintenant configurer lespark.sql.files.maxPartitionBytesParamètre de configuration Spark sur le calcul serverless pour contrôler le nombre maximal d’octets à empaqueter dans une seule partition lors de la lecture de fichiers. Consultez Configurer les propriétés Spark pour les blocs-notes serverless et les travaux.
Changements de comportement
Prise en charge des informations d’actualisation MV/ST dans DESCRIBE EXTENDED AS JSON : la
DESCRIBE EXTENDED AS JSONcommande inclut désormais des informations d’actualisation pour les vues matérialisées et les tables de streaming, ce qui offre une visibilité sur la dernière heure d’actualisation et l’état.Ajout d'une colonne de métadonnées à DESCRIBE QUERY et DESCRIBE TABLE: Les commandes
DESCRIBE QUERYetDESCRIBE TABLEincluent désormais une colonne de métadonnées dans leur sortie, apportant des informations supplémentaires sur les propriétés et les caractéristiques de chaque colonne.Gestion correcte des structs Null lors de la suppression de colonnes NullType : Azure Databricks gère désormais correctement les valeurs de struct Null lors de la suppression de colonnes avec
NullType, empêchant ainsi une altération potentielle des données ou un comportement inattendu.Amélioration de la gestion des structs Null dans Parquet : cette version inclut des améliorations de la façon dont les valeurs de struct Null sont gérées lors de la lecture et de l’écriture dans des fichiers Parquet, ce qui garantit un comportement plus cohérent et correct.
Mise à niveau de la bibliothèque aws-msk-iam-auth pour Kafka : la
aws-msk-iam-authbibliothèque utilisée pour l’authentification IAM Amazon MSK a été mise à niveau vers la dernière version, ce qui améliore la sécurité et la compatibilité.
Version 17.2
25 septembre 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 17.2.
Nouvelles fonctionnalités
ST_ExteriorRingla fonction est désormais prise en charge : vous pouvez désormais utiliser laST_ExteriorRingfonction pour extraire la limite externe d’un polygone et la retourner en tant que chaîne de ligne. Consultez Fonctionst_exteriorring.Prise en charge du
TEMPORARYmot clé pour la création d’une vue des métriques : vous pouvez désormais utiliser leTEMPORARYmot clé pour la création d’une vue des métriques. Les vues de métriques temporaires sont visibles uniquement dans la session qui les a créées et sont supprimées lorsque la session se termine. Consultez CREATE VIEW.Utilisez les E/S natives pour
LokiFileSystem.getFileStatusS3 :LokiFileSystem.getFileStatusutilise désormais la pile d’E/S native pour le trafic Amazon S3 et retourneorg.apache.hadoop.fs.FileStatusdes objets au lieu deshaded.databricks.org.apache.hadoop.fs.s3a.S3AFileStatus.Auto Loader déduit les colonnes de partition en
singleVariantColumnmode : le chargeur automatique déduit désormais les colonnes de partition à partir de chemins de fichiers lors de l’ingestion de données en tant que type variant semi-structuré à l’aide de l’optionsingleVariantColumn. Auparavant, les colonnes de partition n’ont pas été détectées automatiquement. Consultez les options du chargeur automatique.
Changements de comportement
DESCRIBE CONNECTIONaffiche les paramètres d’environnement des connexions JDBC : Azure Databricks inclut désormais les paramètres d’environnement définis par l’utilisateur dans laDESCRIBE CONNECTIONsortie des connexions JDBC qui prennent en charge les pilotes personnalisés et s’exécutent en isolation. Les autres types de connexion restent inchangés.Option permettant de tronquer l’historique uniforme pendant la migration des tables gérées : vous pouvez désormais tronquer l’historique uniforme lors de la migration de tables avec Uniform/Iceberg activé à l’aide
ALTER TABLE...SET MANAGEDde . Cela simplifie les migrations et réduit les temps d’arrêt par rapport à la désactivation et à la réactivation manuelle d’Uniform.Résultats corrects pour
splitavec une regex vide et une limite positive : Azure Databricks retourne désormais les résultats corrects lors de l'utilisation desplit functionavec une regex vide et une limite positive. Précédemment, la fonction a tronqué incorrectement la chaîne restante au lieu de l’inclure dans le dernier élément.Corriger
url_decodeettry_url_decodele traitement des erreurs dans Photon : Dans Photon,try_url_decode()eturl_decode()avecfailOnError = falserenvoient maintenantNULLpour les chaînes encodées en URL non valides, au lieu de faire échouer la requête.Environnement d’exécution partagé pour les UDF Python du catalogue Unity : Azure Databricks partage désormais l’environnement d’exécution pour les fonctions de table définies par l’utilisateur (UDF) Python à partir du même propriétaire et de la même session Spark. Une clause facultative
STRICT ISOLATIONest disponible pour désactiver le partage pour les fonctions définies par l’utilisateur avec des effets secondaires, tels que la modification de variables d’environnement ou l’exécution de code arbitraire.
Version 17.1
19 août 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 17.1.
Nouvelles fonctionnalités
- Réduction de l’utilisation de la mémoire pour les schémas larges dans l’enregistreur Photon : des améliorations ont été apportées au moteur Photon qui réduit considérablement l’utilisation de la mémoire pour les schémas larges, en traitant les scénarios qui ont entraîné des erreurs de mémoire insuffisante.
Changements de comportement
Erreur levée pour les contraintes non valides
CHECK: Azure Databricks lève désormais uneAnalysisExceptionsi une expression de contrainteCHECKne peut pas être résolue lors de la validation des contraintes.Le connecteur Pulsar n’expose plus Bouncy Castle : la bibliothèque bouncy castle est désormais ombrée dans le connecteur Pulsar pour empêcher les conflits classpath. Par conséquent, les travaux Spark ne peuvent plus accéder aux
org.bouncycastle.*classes à partir du connecteur. Si votre code dépend de Bouncy Castle, installez la bibliothèque manuellement sur l’environnement serverless.Le chargeur automatique utilise les événements de fichier par défaut si disponible : le chargeur automatique utilise des événements de fichier au lieu d’une liste de répertoires lorsque le chemin de chargement est un emplacement externe avec les événements de fichier activés. La valeur par défaut
useManagedFileEventsest maintenantif_available(étaitfalse). Cela peut améliorer les performances d’ingestion et journalise un avertissement si les événements de fichier ne sont pas encore activés.Le connecteur Teradata corrige la comparaison de chaînes de caractères en tenant compte de la casse : par défaut, le connecteur Teradata s'aligne désormais sur le comportement de comparaison de chaînes d'Azure Databricks, en les rendant sensibles à la casse. Cette modification est configurable et n’affecte pas les utilisateurs existants, sauf s’ils optent.
Environnement serverless version 4
13 août 2025
La version 4 de l’environnement est désormais disponible dans vos notebooks et travaux serverless. Cette version de l’environnement inclut les mises à niveau de bibliothèque et les mises à jour d’API. Consultez l’environnement serverless version 4.
Version 17.0
24 juillet 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 17.0.
Nouvelles fonctionnalités
Prise en charge des procédures SQL : les scripts SQL peuvent désormais être encapsulés dans une procédure stockée en tant que ressource réutilisable dans le catalogue Unity. Vous pouvez créer une procédure à l’aide de la commande CREATE PROCEDURE , puis l’appeler à l’aide de la commande CALL .
Définissez un classement par défaut pour SQL Functions : l’utilisation de la nouvelle
DEFAULT COLLATIONclause dans la CREATE FUNCTION commande définit le classement par défaut utilisé pourSTRINGles paramètres, le type de retour etSTRINGles littéraux dans le corps de la fonction.Prise en charge des expressions de table courantes récursives (rCTE) : Azure Databricks prend désormais en charge la navigation des données hiérarchiques à l’aide d’expressions de table courantes récursives (RCTEs) . Utilisez un CTE auto-référençant avec
UNION ALLpour suivre la relation récursive.PySpark et Spark Connect prennent désormais en charge les DataFrames
df.mergeIntoAPI : PySpark et Spark Connect prennent désormais en charge l’APIdf.mergeInto.Prise en charge
ALL CATALOGSdansSHOWSCHEMAS : laSHOW SCHEMASsyntaxe est mise à jour pour accepterALL CATALOGS, ce qui vous permet d’itérer dans tous les catalogues actifs qui prennent en charge les espaces de noms. Les attributs de sortie incluent désormais unecatalogcolonne indiquant le catalogue de l’espace de noms correspondant.Le clustering liquide compacte désormais les vecteurs de suppression plus efficacement : les tables Delta avec clustering liquide appliquent désormais des modifications physiques des vecteurs de suppression plus efficacement lors
OPTIMIZEde l’exécution. Pour plus d’informations, consultez Appliquer des modifications aux fichiers de données Parquet.Autoriser les expressions non déterministes dans
UPDATE/INSERTvaleurs de colonne pourMERGEles opérations : Azure Databricks permet désormais l’utilisation d’expressions non déterministes dans les valeurs de colonne mises à jour et insérées desMERGEopérations. Par exemple, vous pouvez maintenant générer des valeurs dynamiques ou aléatoires pour les colonnes à l’aide d’expressions telles querand().Modifiez les API Python Delta MERGE pour retourner dataFrame au lieu de l’unité : les API Python
MERGE(par exempleDeltaMergeBuilder) retournent désormais un DataFrame comme l’API SQL, avec les mêmes résultats.
Changements de comportement
Modification comportementale de l’option de liste de répertoires incrémentiels du chargeur automatique : la valeur de l’option Chargeur
cloudFiles.useIncrementalListingautomatique déconseillée est désormais définie sur une valeur par défaut .falsePar conséquent, cette modification entraîne l’exécution d’un chargeur automatique d’un répertoire complet chaque fois qu’il est exécuté. Databricks recommande d’utiliser cette option. Utilisez plutôt le mode de notification de fichier avec les événements de fichier.CREATE VIEWLes clauses au niveau des colonnes lèvent désormais des erreurs lorsque la clause s’applique uniquement aux vues matérialisées :CREATE VIEWles commandes qui spécifient une clause au niveau des colonnes qui est valide uniquement pourMATERIALIZED VIEWs lèvent une erreur. Les clauses affectées incluentNOT NULL, les types de données spécifiés,DEFAULTetCOLUMN MASK.
Les cibles de performances serverless sont en disponibilité générale
10 juin 2025
La sélection du paramètre de performances serverless pour les travaux et les pipelines est désormais en disponibilité générale.
Lorsque le paramètre optimisé pour les performances est activé, votre charge de travail est optimisée pour accélérer le démarrage et le temps d’exécution. En cas de désactivation, la charge de travail serverless s’exécute en mode de performances standard, qui est optimisée pour le coût et a une latence de lancement légèrement plus élevée.
Pour plus d’informations, consultez Sélectionner un mode de performances et Sélectionner un mode de performances.
Version 16.4
28 mai 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 16.4 LTS.
Changements de comportement
Correction pour respecter les options des plans de source de données mis en cache : Cette mise à jour garantit que les lectures des tables respectent les options définies pour tous les plans de source de données lorsqu'ils sont mis en cache, et pas seulement la première lecture de table mise en cache. Auparavant, la lecture de la table de la source de données mettait en cache le premier plan, mais ne tenait pas compte des différentes options dans les requêtes suivantes.
Activer l’indicateur pour exiger la matérialisation source pour les opérations MERGE : auparavant, les utilisateurs pouvaient désactiver la matérialisation source dans MERGE en définissant
merge.materializeSourcesurnone. Lorsque le nouvel indicateur est activé, la matérialisation source est toujours requise et les tentatives de désactivation entraînent une erreur. Databricks prévoit d’activer cet indicateur uniquement pour les clients qui n’ont pas précédemment modifié cette configuration. La plupart des utilisateurs ne doivent donc pas subir de modification du comportement.
Nouvelles fonctionnalités
Le chargeur automatique peut désormais nettoyer les fichiers traités dans le répertoire source : vous pouvez désormais demander au chargeur automatique de déplacer ou de supprimer automatiquement des fichiers qui ont été traités. Optez pour cette fonctionnalité à l’aide de l’option
cloudFiles.cleanSourceChargeur automatique. Voir les options du chargeur automatique, souscloudFiles.cleanSource.Prise en charge de l'élargissement de type ajoutée pour le streaming depuis des tables Delta : cette version ajoute la prise en charge du streaming depuis une table Delta comportant des données de colonnes dont le type a été élargi, ainsi que le partage d'une telle table (avec l'élargissement de type activé) via Delta Sharing entre instances Databricks. La fonctionnalité d’élargissement de type est actuellement en préversion publique. Consultez Élargissement du type.
IDENTIFIER prise en charge désormais disponible dans DBSQL pour les opérations de catalogue : vous pouvez désormais utiliser la clause
IDENTIFIERlors de l’exécution des opérations de catalogue suivantes :CREATE CATALOGDROP CATALOGCOMMENT ON CATALOGALTER CATALOG
Cette nouvelle syntaxe vous permet de spécifier dynamiquement des noms de catalogue à l’aide de paramètres définis pour ces opérations, ce qui permet des flux de travail SQL plus flexibles et réutilisables. En guise d’exemple de syntaxe, considérez
CREATE CATALOG IDENTIFIER(:param)oùparamest un paramètre fourni pour spécifier un nom de catalogue. Consultez la clause IDENTIFIER.Les expressions compilées fournissent désormais des alias temporaires générés automatiquement : les alias générés automatiquement pour les expressions compilées incorporent
COLLATEdésormais des informations de manière déterministe. Les alias générés automatiquement sont temporaires (instables) et ne doivent pas être pris en compte. Au lieu de cela, en tant que meilleure pratique, utilisezexpression AS aliasde manière cohérente et explicite.Ajout de la prise en charge de l'API Filter Pushdown aux sources de données Python : le calcul serverless prend désormais en charge le pushdown de filtre pour la lecture par lots des sources de données Python en tant qu'API, de manière similaire à l'interface
SupportsPushDownFilters. Consultez les notes de publication 16.4 LTS.Amélioration du suivi de la fonction UDF Python : le suivi de la fonction UDF Python inclut désormais des images du pilote et de l’exécuteur, ainsi que des images clientes, ce qui entraîne de meilleurs messages d’erreur qui affichent des détails plus importants et plus pertinents (tels que le contenu de ligne des images à l’intérieur d’une fonction UDF).
UNION/EXCEPT/INTERSECT à l'intérieur d'une vue et EXECUTE IMMEDIATE retournent maintenant des résultats corrects : les requêtes pour les définitions de vues temporaires et persistantes de niveau supérieur contenant
UNION/EXCEPT/INTERSECTet des colonnes non aliasées retournaient auparavant des résultats incorrects, car les mots-clésUNION/EXCEPT/INTERSECTétaient considérés comme des alias. À présent, ces requêtes effectuent correctement l’opération d'ensemble entière.Configuration du plan mis en cache pour les sources de données et guide de migration : la lecture à partir d'une table basée sur une source de fichiers respectera désormais correctement les options de requête (par exemple, les délimiteurs). Auparavant, le premier plan de requête a été mis en cache et les modifications d’option suivantes sont ignorées. Pour restaurer le comportement précédent, affectez à
spark.sql.legacy.readFileSourceTableCacheIgnoreOptionsla valeurtrue.Nouvelles fonctions
listaggetstring_agg: à compter de cette version, vous pouvez utiliser les fonctionslistaggoustring_aggpour agréger les valeursSTRINGetBINARYau sein d’un groupe. Voir string_agg.
Le mode de performance est désormais configurable sur les travaux sans serveur.
14 avril 2025
Vous pouvez maintenant sélectionner le mode de performance d’un travail serverless à l’aide du paramètre Performance optimisée dans la page des détails du travail. Auparavant, tous les travaux sans serveur étaient optimisés pour les performances. À présent, vous pouvez désactiver le paramètre Optimisé pour les performances afin d'exécuter la charge de travail en mode de performance standard. Le mode peformance standard est conçu pour réduire les coûts des charges de travail où une latence de lancement légèrement plus élevée est acceptable.
Le mode de performances standard n’est pas pris en charge pour les pipelines continus, les exécutions ponctuelles créées à l’aide du runs/submit point de terminaison ou les tâches d'entrepôt SQL, y compris les vues matérialisées.
Pour plus d’informations sur le mode de performances, consultez Sélectionner un mode de performance.
Version 16.3
9 avril 2025
Cette version de calcul serverless correspond approximativement à Databricks Runtime 16.3.
Changements de comportement
-
*Message d’erreur amélioré lorsqu’une
kafka.sasl.client.callback.handler.classvaleur n’est pas valide : cette version inclut une modification pour renvoyer un message d’erreur plus descriptif lorsqu’ellekafka.sasl.client.callback.handler.classest affectée à une valeur non valide.
Nouvelles fonctionnalités
La prise en charge du lecteur d’état est en disponibilité générale : la prise en charge de la lecture des informations d’état pour les requêtes Structured Streaming est désormais en disponibilité générale sur le calcul serverless. Consultez Lire les informations d’état de Structured Streaming.
La rétrogradation du protocole de table Delta est en disponibilité générale avec la protection des points de contrôle :
DROP FEATUREest en disponibilité générale pour supprimer les fonctionnalités de table Delta Lake et rétrograder le protocole de table. Par défaut,DROP FEATUREcrée désormais des points de contrôle protégés pour une expérience de rétrogradation plus optimisée et simplifiée qui ne nécessite pas de temps d’attente ou de troncation d’historique. Consultez Supprimer une fonctionnalité de table Delta Lake et passer à une version antérieure du protocole de table.Écrire des scripts SQL procéduraux basés sur ANSI SQL/PSM (préversion publique) : vous pouvez désormais utiliser des fonctionnalités de script basées sur ANSI SQL/PSM pour écrire une logique procédurale avec SQL, notamment des instructions de flux de contrôle, des variables locales et la gestion des exceptions. Consultez le script SQL.
Classement par défaut au niveau de la table et de la vue : vous pouvez désormais spécifier un classement par défaut pour les tables et les vues. Cela simplifie la création de tables et de vues où toutes ou la plupart des colonnes partagent le même classement. Voir Classement.
Nouvelles fonctions H3 : trois nouvelles fonctions H3 ont été ajoutées : h3_try_coverash3, h3_try_coverash3string et h3_try_tessellateaswkb.
Modifier plusieurs colonnes de table dans une ALTER TABLE instruction : vous pouvez désormais modifier plusieurs colonnes dans une seule
ALTER TABLEinstruction. Voir la clause ALTER TABLE ... COLUMN.
Version 16.2
13 mars 2025
Cette version de calcul sans serveur correspond approximativement à Databricks Runtime 16.2.
Changements de comportement
Dans le partage delta, l’historique des tables est activé par défaut: les partages créés à l’aide de la commande SQL
ALTER SHARE <share> ADD TABLE <table>ont désormais le partage d’historique (WITH HISTORY) activé par défaut. Consultez ALTER SHARE.Les instructions SQL d’informations d’identification retournent une erreur lorsqu’il existe une incompatibilité de type d’informations d’identification : maintenant, si le type d’informations d’identification spécifié dans une instruction SQL de gestion des informations d’identification ne correspond pas au type de l’argument d’informations d’identification, une erreur est retournée et l’instruction n’est pas exécutée.
Nouvelles fonctionnalités
Utilisez le
timestampdiff×tampadddans les expressions de colonne générées Vous pouvez désormais utiliser les fonctions timestampdiff et timestampadd dans les expressions de colonne générées par Delta Lake. Consultez Colonnes générées par Delta Lake.Mise à jour vers
DESCRIBE TABLEretourne des métadonnées sous forme deJSON structurée : vous pouvez désormais utiliser la commandeDESCRIBE TABLE AS JSONpour retourner les métadonnées de table en tant que document JSON. La sortie JSON est plus structurée que le rapport lisible par l’homme par défaut et peut être utilisée pour interpréter le schéma d’une table par programmation. Pour plus d’informations, consultez DESCRIBE TABLE AS JSON.Classements non sensibles à la fin : Serverless prend désormais en charge les classements non sensibles à la fin. Par exemple, ces collations traitent
'Hello'et'Hello 'comme identiques. Pour plus d’informations, consultez Classement RTRIM.
Résolution des bogues
-
Amélioration du traitement du clone incrémentiel: cette version inclut un correctif pour un cas de périphérie où un
CLONEincrémentiel peut copier des fichiers déjà copiés à partir d’une table source vers une table cible. Consultez Cloner une table sur Azure Databricks.
Paramètre mémoire élevée disponible sur les notebooks serverless (préversion publique)
7 février 2025
Vous pouvez maintenant configurer une taille de mémoire plus élevée pour vos cahiers de calcul et vos charges applicatives sans serveur. Ce paramètre peut être appliqué aux charges de travail de cahier interactives et planifiées.
L’utilisation serverless avec une mémoire élevée a un taux d’émission DBU plus élevé que la mémoire standard.
Pour plus d’informations, consultez Utiliser un calcul sans serveur haute mémoire.
Version 16.1
5 février 2025
Cette version de calcul sans serveur correspond approximativement à Databricks Runtime 16.0 et Databricks Runtime 16.1.
Nouvelles fonctionnalités
-
prise en charge d’Avro pour le schéma récursif : Vous pouvez désormais utiliser l’option
recursiveFieldMaxDepthavec la fonctionfrom_avroet la source de donnéesavro. Cette option définit la profondeur maximale pour la récursivité du schéma sur la source de données Avro. Consultez Lire et écrire des données Avro en streaming. - Prise en charge étendue du registre de schémas Confluent pour Avro : Serverless prend désormais en charge la référence de schéma Avro avec le registre de schémas Confluent. Consultez S’authentifier auprès d’un registre de schémas Confluent externe.
-
Forcer le reclustering sur les tables avec clustering liquide : Vous pouvez maintenant utiliser la syntaxe
OPTIMIZE FULLpour forcer le reclustering de tous les enregistrements d'une table avec le clustering liquide activé. Consultez Forcer le reclustering pour tous les enregistrements. - Les API Delta pour Python prennent désormais en charge les colonnes d’identité : Vous pouvez désormais utiliser les API Delta pour Python pour créer des tables avec des colonnes d’identité. Consultez Utiliser des colonnes d’identité dans Delta Lake.
-
Créer des tables en cluster liquides au cours d’écritures de streaming : Vous pouvez désormais utiliser
clusterBypour activer le clustering liquide lors de la création de nouvelles tables avec des écritures de streaming structuré. Consultez Activer le clustering liquide. - Prise en charge de la clause OPTIMIZE FULL : Le calcul sans serveur prend désormais en charge la clause OPTIMIZE FULL. Cette clause optimise tous les enregistrements d’une table qui utilise le clustering liquide, y compris les données qui ont pu être précédemment regroupées.
-
Prise en charge de la spécification des options WITH dans INSERT et la référence table : le calcul serverless prend désormais en charge une spécification d’options pour les références de table et les noms de tables d’une instruction
INSERTqui peut être utilisée pour contrôler le comportement des sources de données. -
Nouvelles fonctions SQL : Les fonctions SQL suivantes sont désormais disponibles sur le calcul serverless :
- try_url_decode est une version tolérante aux erreurs de url_decode.
-
zeroifnull retourne 0 si l’expression d’entrée à la fonction
zeroifnull()estNULL. -
nullifzero retourne
NULLsi l’entrée est 0 ou si elle n’est pas 0. - dayname(expr) renvoie l’acronyme anglais à trois lettres du jour de la semaine pour la date donnée.
- uniform(expr1, expr2 [,seed]) renvoie une valeur aléatoire avec des valeurs indépendantes et distribuées de façon identique dans la plage de nombres spécifiée.
-
randstr(length) renvoie une chaîne aléatoire de caractères alphanumériques
length.
-
Activer l’évolution automatique du schéma lors de la fusion de données dans une table Delta : Support a été ajouté pour le membre
withSchemaEvolution()de la classeDeltaMergeBuilder. UtilisezwithSchemaEvolution()pour activer l'évolution automatique du schéma lors des opérationsMERGE. Par exemple :mergeBuilder.whenMatched(...).withSchemaEvolution().execute()}}. -
prise en charge des classements dans Apache Spark est disponible en préversion publique : Vous pouvez désormais affecter des classements respectant la casse et prenant en charge la langue aux colonnes et expressions
STRING. Ces classements sont utilisés dans les comparaisons de chaînes, le tri, les opérations de regroupement et de nombreuses fonctions de chaîne. Voir Classement. - Prise en charge des classements dans Delta Lake est en préversion publique : Vous pouvez maintenant définir des classements pour les colonnes lors de la création ou de la modification d’une table Delta. ConsultezSupport de classement pour Delta Lake.
-
LITEmode aspirateur est disponible en aperçu public : Vous pouvez désormais utiliserVACUUM table_name LITEpour effectuer une opération d'aspiration plus légère qui exploite les métadonnées dans le journal des transactions Delta. Voir mode complet vs mode léger et VACUUM. -
Prise en charge du paramétrage de la clause
USE CATALOG with IDENTIFIER: la IDENTIFIERclause est désormais prise en charge pour l’instruction USE CATALOG. Avec cette prise en charge, vous pouvez paramétrer le catalogue actuel en fonction d’une variable de chaîne ou d’un marqueur de paramètre. - COMMENT ON COLUMN prise en charge des tables et des vues : l’instruction COMMENT ON prend désormais en charge la modification des commentaires pour les colonnes d’affichage et de table.
- Appel de paramètre nommé pour plus de fonctions : Les fonctions suivantes prennent en charge appel de paramètre nommé :
-
Le paramètre
SYNC METADATAà la commande REPAIR TABLE est pris en charge avec le metastore Hive : Vous pouvez maintenant utiliser le paramètreSYNC METADATAavec la commandeREPAIR TABLEpour mettre à jour les métadonnées d’une table gérée par metastore Hive. Consultez REPAIR TABLE. -
Intégrité améliorée des données pour les lots compressés Apache Arrow : Pour mieux protéger contre l’altération des données, chaque lot compressé Apache Arrow
LZ4inclut désormais le contenuLZ4et les sommes de contrôle de bloc. Consultez la description du format de cadre LZ4 .
-
Pilote Oracle JDBC intégré : Le calcul sans serveur dispose désormais du pilote Oracle JDBC intégré. Si vous utilisez un fichier JAR du pilote JDBC chargé par le client via
DriverManager, vous devez réécrire des scripts pour utiliser explicitement le fichier JAR personnalisé. Sinon, le pilote intégré est utilisé. Ce pilote prend uniquement en charge la Lakehouse Federation. Pour d'autres scénarios, vous devez fournir votre propre pilote. -
Erreurs plus détaillées pour les tables Delta accessibles avec des chemins d’accès : Une nouvelle expérience de message d’erreur pour les tables Delta accessibles à l’aide de chemins est désormais disponible. Toutes les exceptions sont désormais transférées à l’utilisateur(-trice). L’exception
DELTA_MISSING_DELTA_TABLEest désormais réservée lorsque les fichiers sous-jacents ne peuvent pas être lus en tant que table Delta.
Changements de comportement
- Changement majeur : RStudio hébergé est arrivé en fin de vie: Avec cette version, le serveur RStudio hébergé par Databricks est arrivé à fin de vie et n'est disponible sur aucun espace de travail Azure Databricks s'exécutant sur un calcul serverless. Pour en savoir plus et voir la liste des alternatives à RStudio, consultez Se connecter à un serveur RStudio hébergé par Databricks.
Changement disruptif : suppression du support pour la modification de
byte,short,intetlongvers des types plus larges : Pour garantir un comportement cohérent entre les tables Delta et Apache Iceberg, les modifications de types de données suivantes ne peuvent plus être appliquées aux tables avec la fonctionnalité élargissement des types activée.-
byte,short,intetlongàdecimal. -
byte,shortetintàdouble.
-
Analyse correcte des modèles regex avec négation dans le regroupement de caractères imbriqués : Cette version inclut une modification pour prendre en charge l'analyse correcte des modèles regex avec négation dans le regroupement de caractères imbriqués. Par exemple,
[^[abc]]sera analysé en tant que « tout caractère qui n’est PAS l’un des « abc ».En outre, le comportement Photon était incohérent avec Spark pour les classes de caractères imbriquées. Les modèles regex contenant des classes de caractères imbriquées n’utilisent plus Photon et utilisent à la place Spark. Une classe de caractères imbriquée est n’importe quel modèle contenant des crochets entre crochets, tels que
[[a-c][1-3]].Amélioration de la détection des correspondances dupliquées dans Delta Lake
MERGE:MERGEprend désormais en compte les conditions spécifiées dans la clauseWHEN MATCHED. Consultez Faire un upsert dans une table Delta Lake en utilisant la fusion.La fonctionnalité de
addArtifact()est désormais cohérente entre les types de calcul : Lorsque vous utilisezaddArtifact(archive = True)pour ajouter une dépendance au calcul serverless, l’archive est automatiquement décompressée.
Résolution des bogues
- Les décalages de fuseau horaire incluent désormais les secondes lorsqu’ils sont sérialisés au format CSV, JSON et XML : Les horodatages avec des décalages de fuseau horaire qui incluent des secondes (courants pour les horodatages antérieurs à 1900) omettaient les secondes lors de la sérialisation au format CSV, JSON et XML. Le formateur d’horodatage par défaut a été corrigé et retourne maintenant les valeurs de décalage correctes pour ces horodatages.
Autres modifications
-
codes d’erreur renommés pour la source
cloudFilesStructured Streaming : Les codes d’erreur suivants ont été renommés :-
_LEGACY_ERROR_TEMP_DBR_0143est renomméCF_INCORRECT_STREAM_USAGE. -
_LEGACY_ERROR_TEMP_DBR_0260est renomméCF_INCORRECT_BATCH_USAGE.
-
Version 15.4
28 octobre 2024
Cette version de calcul serverless correspond approximativement à Databricks Runtime 15.4
Nouvelles fonctionnalités
-
Fonctions de validation UTF-8 : cette version présente les fonctions suivantes pour valider les chaînes UTF-8 :
- is_valid_utf8 vérifie si une chaîne est une chaîne UTF-8 valide.
- make_valid_utf8 convertit une chaîne UTF-8 potentiellement non valide en chaîne UTF-8 valide à l’aide de caractères de substitution.
- validate_utf8 génère une erreur si l’entrée n’est pas une chaîne UTF-8 valide.
-
try_validate_utf8 retourne
NULLsi l’entrée n’est pas une chaîne UTF-8 valide.
- Activer UniForm Iceberg en utilisant ALTER TABLE : Vous pouvez maintenant activer UniForm Iceberg sur des tables existantes sans réécrire les fichiers de données. Consultez Activer les lectures d'Iceberg sur une table existante.
-
try_url_decode fonction : cette version introduit la fonction try_url_decode , qui décode une chaîne encodée PAR URL. Si la chaîne n’est pas au format correct, la fonction retourne
NULLau lieu de lever une erreur. -
Autorisez éventuellement l’optimiseur à s’appuyer sur des contraintes de clé étrangère non appliquées : pour améliorer les performances des requêtes, vous pouvez désormais spécifier le
RELYmot clé surFOREIGN KEYles contraintes lorsque vous créez ou ALTER une table. -
Exécutions de travaux parallélisées pour les remplacements sélectifs : Les remplacements sélectifs utilisant
replaceWhereexécutent maintenant des tâches qui suppriment des données et en insèrent de nouvelles en parallèle, ce qui améliore les performances des requêtes et l'utilisation du cluster. -
Amélioration des performances pour le flux de données modifiées avec des remplacements sélectifs : les remplacements sélectifs à l’aide
replaceWherede tables avec le flux de données modifiées n’écrivent plus de fichiers de données modifiées distincts pour les données insérées. Ces opérations utilisent une colonne masquée_change_typeprésente dans les fichiers de données Parquet sous-jacents pour enregistrer les changements sans amplification d’écriture. -
Latence de requête améliorée pour la
COPY INTOcommande : cette version inclut une modification qui améliore la latence de requête pour laCOPY INTOcommande. Cette amélioration est implémentée en rendant asynchrone le chargement de l’état par le stockage d’état RocksDB. Avec ce changement, vous devez constater une amélioration de la durée de démarrage pour les requêtes avec des états volumineux, telles que les requêtes avec un grand nombre de fichiers déjà ingérés. -
Prise en charge de la suppression de la fonctionnalité de table de contraintes de vérification : vous pouvez maintenant supprimer la fonctionnalité de table
checkConstraintsà partir d'une table Delta à l'aide deALTER TABLE table_name DROP FEATURE checkConstraints. Consultez Désactiver des contraintes de validation.
Changements de comportement
Modification de la liaison de schéma pour les vues : Lorsque les types de données dans la requête sous-jacente d’une vue changent de ceux utilisés lors de la création de la vue, Databricks ne lève plus d’erreurs pour les références à la vue lorsqu’aucun cast sécurisé ne peut être effectué.
Au lieu de cela, l’affichage compense à l’aide de règles de cast régulières dans la mesure du possible. Ce changement permet à Databricks de tolérer les modifications de schéma de table plus facilement.
Interdire la tolérance d’une syntaxe non documentée
!pourNOTen dehors de la logique booléenne : Databricks ne tolérera plus l’utilisation de!comme synonyme deNOTen dehors de la logique booléenne. Ce changement réduit la confusion, s’aligne sur la norme SQL, et rend SQL plus portable. Par exemple :CREATE ... IF ! EXISTS, IS ! NULL, propriété de champ ou colonne! NULL,! INet ! BETWEEN doit être remplacé par :CREATE ... IF NOT EXISTS,IS NOT NULL,NOT NULLpropriété de champ ou colonne,NOT INetNOT BETWEEN.L’opérateur de préfixe booléen
!(par exemple,!is_mgrou!(true AND false)) n’est pas affecté par ce changement.Les parties non documentées et non traitées de la syntaxe de définition des colonnes dans les vues sont interdites : Databricks prend en charge CREATE VIEW avec des colonnes nommées et des commentaires de colonnes.
La spécification des types de colonnes, des contraintes
NOT NULL, ou deDEFAULTa été tolérée dans la syntaxe sans avoir d’effet. Databricks va supprimer cette tolérance de syntaxe. Cela réduira la confusion, s’alignera sur la norme SQL et autorisera des améliorations ultérieures.Gestion cohérente des erreurs pour le décodage Base64 dans Spark et Photon : cette version modifie la façon dont Photon gère les erreurs de décodage Base64 pour qu’elles correspondent à la gestion Spark de ces erreurs. Avant ces modifications, le chemin de génération de code Photon et Spark ne parvenait parfois pas à déclencher des exceptions d’analyse, tandis que l’exécution interprétée par Spark déclenchait correctement
IllegalArgumentExceptionouConversionInvalidInputError. Cette mise à jour garantit que Photon déclenche constamment les mêmes exceptions que Spark pendant les erreurs de décodage Base64, ce qui fournit une gestion des erreurs plus prévisible et fiable.L’ajout d’une
CHECKcontrainte sur une colonne non valide retourne maintenant la UNRESOLVED_COLUMN. WITH_SUGGESTION classe d’erreur : pour fournir une messagerie d’erreur plus utile, dans Databricks Runtime 15.3 et versions ultérieures, uneALTER TABLE ADD CONSTRAINTinstruction qui inclut une contrainte référençant unCHECKnom de colonne non valide retourne la UNRESOLVED_COLUMN. WITH_SUGGESTION classe d’erreur . Auparavant, une erreurINTERNAL_ERRORétait retournée.
Le JDK a changé de niveau de JDK 8 à JDK 17
15 août 2024
Le calcul serverless pour les notebooks et les flux de travail a migré du Kit de développement Java (JDK) 8 vers JDK 17 côté serveur. Cette mise à niveau inclut les modifications comportementales suivantes :
Analyse correcte des modèles regex avec négation dans le regroupement de caractères imbriqués : avec cette mise à niveau, Azure Databricks prend désormais en charge l’analyse correcte des modèles regex avec la négation dans le regroupement de caractères imbriqués. Par exemple,
[^[abc]]sera analysé en tant que « tout caractère qui n’est PAS l’un des « abc ».En outre, le comportement Photon était incohérent avec Spark pour les classes de caractères imbriquées. Les modèles regex contenant des classes de caractères imbriquées n’utilisent plus Photon et utilisent à la place Spark. Une classe de caractères imbriquée est n’importe quel modèle contenant des crochets entre crochets, tels que
[[a-c][1-3]].
Version 15.1
23 juillet 2024
Cette version de calcul serverless correspond globalement à Databricks Runtime 15.1
Nouvelles fonctionnalités
Prise en charge de la syntaxe étoile (*) dans la clause WHERE : vous pouvez désormais utiliser la clause étoile (*) dans la syntaxe WHERE pour référencer toutes les colonnes de la liste SELECT.
Par exemple : SELECT * FROM VALUES(1, 2) AS T(a1, a2) WHERE 1 IN(T.*).
Modifications
Récupération améliorée des erreurs pour l’analyse JSON : l’analyseur JSON utilisé pour les expressions de chemin d’accès from_json() et JSON récupère désormais plus rapidement à partir de la syntaxe incorrecte, ce qui entraîne moins de perte de données.
Lorsque vous rencontrez une syntaxe JSON malformée dans un champ de struct, une valeur de tableau, une clé de carte ou une valeur de carte, l’analyseur JSON retourne désormais NULL uniquement pour le champ, la clé ou l’élément non lisibles. Les champs, clés ou éléments suivants seront correctement analysés. Avant cette modification, l’analyseur JSON a abandonné l’analyse du tableau, du struct ou de la carte et retourné NULL pour le contenu restant.
Version 14.3
15 avril 2024
Il s’agit de la version initiale du calcul sans serveur. Ceci correspond approximativement à Databricks Runtime 14.3 avec certaines modifications qui suppriment la prise en charge de certaines fonctionnalités non serverless et héritées.
Paramètres de configuration Spark pris en charge
Pour automatiser la configuration de Spark sur le calcul serverless, Azure Databricks a supprimé la prise en charge de la définition manuelle de la plupart des configurations Spark. Pour afficher la liste des paramètres de configuration Spark pris en charge, consultez Configurer les propriétés Spark pour les notebooks serverless et les travaux.
Les exécutions de tâches sur un calcul sans serveur échouent si une configuration Spark non prise en charge est définie.
Les fonctions "input_file" sont obsolètes
Les fonctions input_file_name(), input_file_block_length() et input_file_block_start() ont été dépréciées. L’utilisation de ces fonctions est fortement déconseillée.
Utilisez plutôt la colonne de métadonnées de fichier pour récupérer les informations de métadonnées de fichier.
Changements comportementaux
Calcul serverless verison 2024.15 inclut les modifications comportementales suivantes :
-
Correctif du bogue unhex(hexStr) : lors de l’utilisation de la fonction
unhex(hexStr), hexStr est toujours rempli jusqu’à un octet entier. Auparavant, la fonction unhex ignorait le premier demi-octet. Par exemple :unhex('ABC')produit désormaisx'0ABC'au lieu dex'BC'. - Les alias de colonne générés automatiquement sont désormais stables : lorsque le résultat d’une expression est référencé sans alias de colonne spécifié par l’utilisateur, cet alias généré automatiquement sera désormais stable. Le nouvel algorithme peut entraîner une modification des noms générés automatiquement précédemment utilisés dans les fonctionnalités telles que les vues matérialisées.
-
Les analyses de table avec des champs de type
CHARsont désormais toujours rembourrées : Les tables Delta, certaines tables JDBC et certaines sources de données externes stockent les données CHAR sous forme non rembourrée. Lors de la lecture, Azure Databricks remplit désormais les données avec des espaces à la longueur déclarée pour garantir une sémantique correcte. -
Les conversions de BIGINT/DECIMAL en TIMESTAMP provoquent une exception en cas de dépassement de capacité : Azure Databricks autorise la conversion de BIGINT et DECIMAL en TIMESTAMP en traitant la valeur comme le nombre de secondes écoulées depuis l'époque Unix. Avant, Azure Databricks aurait retourné des valeurs dépassées, mais désormais, il lève une exception en cas de dépassement de capacité. Utilisez
try_castpour retourner NULL au lieu d’une exception. -
l’exécution UDF PySpark a été améliorée pour correspondre au comportement exact de l’exécution UDF sur le calcul dédié : Les modifications suivantes ont été apportées :
- Les fonctions définies par l’utilisateur avec un type de retour de chaîne ne convertissent plus implicitement les valeurs non-chaînes en chaînes. Avant, les fonctions définies par l’utilisateur avec un type de retour
strappliqueraient un wrapperstr(..)au résultat, quel que soit le type de données réel de la valeur retournée. - Les fonctions définies par l’utilisateur avec types de retour
timestampn’appliquent plus implicitement de conversion de fuseau horaire aux horodatages.
- Les fonctions définies par l’utilisateur avec un type de retour de chaîne ne convertissent plus implicitement les valeurs non-chaînes en chaînes. Avant, les fonctions définies par l’utilisateur avec un type de retour