Notes de version de Snowpark Connect for Spark pour 2026¶
Snowflake utilise la version sémantique pour les mises à jour Snowpark Connect for Spark.
Pour la documentation, voir Exécuter les charges de travail Apache Spark™ sur Snowflake avec Snowpark Connect for Spark et Soumission d’applications Spark.
1.24.0 (24 avril 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Désactiver
filter_classpath_jarsau démarrage du serveurPrendre en charge la conversion des UDT en chaîne et rejeter les conversions d’UDT non valides
Réparer les APIs DataFrame
describeetsummaryAjouter une protection
SUPPORTED_SCALESpour ignorer des charges de travail à des échelles non prises en charge
Nouvelles fonctionnalités¶
Ajouter les fichiers JARs équivalents pour Scala 2.13 aux paquets de dépendances
Ajouter une référence aux limitations et à l’implémentation du partitionnement Hive
Supprimer 29 fichiers JARs inutilisés des paquets
snowpark_connect_deps(~23MB)Ignorer la conversion structurée explicite lorsque le serveur prend en charge la conversion implicite pour Parquet
Mettre à niveau la dépendance de Snowpark à 1.50.0
1.23.0 (22 avril 2026)¶
Snowpark Connect for Spark¶
Changements de comportement¶
Définir la valeur par défaut de
useLogicalTypesurtruepour le format Parquet
Corrections de bogues¶
Corriger
count()pour qu’il corresponde au comportement de Spark SQLAssouplir la contrainte de version de protobuf de :code:` <6.32.0` à :code:` <6.34.0`
Convertir systématiquement vers des types non structurés
Remplacer l’importation de
snowflake.snowpark_connect.includesparpyspark.sqlUtilisez toujours un scanner Parquet vectorisé ; supprimer l’option de configuration
useVectorizedScannerCorriger les valeurs par défaut de
regexp_extract, les indicateurs en ligne et la gestion de PCRECorriger les écarts de compatibilité des opérateurs SQL
Corriger la sémantique de
IN NULLpour correspondre au comportement de SparkPrendre en charge la lecture depuis une zone de préparation externe persistante nommée dans une UDTF XML
Préserver les métadonnées UDT via des vues temporaires et des renommages
toDFUtiliser le chemin SQL pour les contrôles d’existence de la table de catalogue
Autoriser l’expression d’étoile dans l’agrégation de colonnes de la carte
Nouvelles fonctionnalités¶
Implémenter la prise en charge des séquences pour les types d’horodatage/de date et d’intervalle
Ajouter le paramètre de session CTE
Initialiser la nullabilité du suivi des colonnes et des types complexes
Examiner la nullabilité des fonctions intégrées dans plusieurs catégories d’expressions
Examiner la nullabilité dans la commande
SetAjouter la nullabilité à
rangeIntroduire une barrière de régression des performances dansGitHub Actions
1.22.0 (18 avril 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Corriger les références de colonnes qualifiées CTE dans ORDER BY/WHERE/GROUP BY
Corriger
withColumnsur une clé de jointure après une jointure de type « using »Corriger l’erreur immédiate de:code:
fillnalorsqu’une colonne du sous-ensemble manqueCorriger la lecture sensible à la casse de la zone de préparation interne
Réduire la matérialisation des limites des fonctions de fenêtre
Préserver le schéma struct/map/array avec du contenu vide
Prendre en charge ON_ERROR =CONTINUE pourINFER_SCHEMA dans les lectures de fichiers CSV etJSON
Corriger la sélection du type au moment de la compilation pour les valeurs hexadécimales
Éviter la création de tables temporaires redondantes pour:code:
read.parquetdanssaveAsTablePréserver
StructType/MapTypeen mode strictComparaison de qualificatifs insensibles à la casse dans la résolution de colonnes
Utiliser la fonction intégrée de Snowpark pour la fonction
CBRTCorriger le traitement de
nullValueet des espaces blancs dans les fichiers XMLUtiliser la décimale pour
DecimalTypeen mode strictCorriger le bogue
map_concatCorriger
unionByNamepour gérer les guillemets dans les noms de colonnes et respecter la configuration sensible à la casseSupprimer les virgules de fin des fichiers de ressource de test JSON
Nouvelles fonctionnalités¶
Bibliothèque Snowpark Connect Java Client pour prendre en charge les charges de travail Spark Scala et Java
Utiliser l’implémentation native pour
ARRAY_REPEATetMAP_ENTRIESUtiliser
MAP_ENTRIESdansmap_castRéduire le nombre de requêtes utilisées pour l’inférence VARIANT dans
read_parquetAjouter un cache de sous-plan inter-requêtes croisées pour
map_relation
1.21.1 (10 avril 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Implémenter la validation de l’encodage JSON
Réduction de la taille des requêtes pour les fonctions qui renomment les colonnes en interne
Assouplissement des contraintes de la version py4j pour permettre une compatibilité plus large
Isoler les artefacts par session spark
Nouvelles fonctionnalités¶
Ajouter un nom d’application par défaut pour la session
Ajouter la conversion du format date/heure JSON
1.21.0 (09 avril 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Gérer l’échappement des métacaractères de recherche globale dans les chemins CSV/JSON
Corriger le schéma non annulable JSON pour qu’il corresponde au comportement de Spark
Ajouter une casse de correspondance de colonne par défaut pour XML
Corriger TEXT:code:
lineSepavec codage hexadécimal pour RECORD_DELIMITERCorriger la lecture Spark de fichiers XML depuis la zone de préparation externe
CSV vide renvoie DataFrame vide
Ajouter un idx par défaut à
regexp_extractCorriger le schéma non annulable CSV pour qu’il corresponde au comportement de Spark
Corriger la collision de nommage de zone de préparation temporaire sous des tests parallèles
Ajouter un chemin rapide aux fonctions regexp
Contrainte de schéma sur
storeAssignmentPolicyDouble-échappement du délimiteur barre oblique inverse dans les fichiers CSV
Optimiser
posexplodeValidation de
lineSepvide pour les fichiers CSVCorriger un bogue empêchant xml de lire un fichier de zone de préparation externe
Réduire la verbosité du journal par défaut pour les utilisateurs
Nouvelles fonctionnalités¶
Ajout de la prise en charge du nombre de lignes DML
Prendre en charge
overwrite(condition)pourDataFrameWriterV2mergeSchemaen écriture dans Iceberg - évolution des colonnes de premier niveauAjout de la prise en charge de l’écrasement des partitions dans
DataFrameWriterV2Ajouter un paramètre
app_nameàinit_spark_session
1.20.0 (03 avril 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Corriger un problème de performances
Corriger le schéma de fusion pour JSON
Corriger
arrays_zippour les types complexesCorriger LCAs dans les agrégations implicites
Nouvelles fonctionnalités¶
Résultat du cache du format de fichier JSON
Résoudre les types connus depuis
map_unresolved_functionsans passer par le « typer »Prendre en charge le partitionnement Hive pour le mode « copy into » des fichiers JSON
Ajouter l’inscription de session SCOS lors de l’initialisation du serveur
Modifier la requête de préchauffage avec une chaîne distincte pour le filtrage
1.19.0 (26 mars 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Correction de l’accès au champ struct à partir d’un tableau via getIlem
Correction des noms pour l’accès aux éléments des tableaux
Ajout de la compression manquante pour le format TEXT
Réduction de la taille des requêtes dans
DataFrame.replace, création d’UDTF etread_parquetÉmulation des types lors de la création de la vue [temp]
Correction de la conversion des types structurés
Correction de la validation des types d’écriture de texte
Prise en charge de la lecture des répertoires XML en parallèle
Optimisation de l’utilisation de la fonction
convPrise en charge de la lecture et de l’écriture aux formats Snowflake et
net.snowflake.spark.snowflakeÉmulation des types lors de la création d’une table
Correction de l’accès aux structures imbriquées avec des tableaux
Correction du message d’erreur Parquet
Optimisation de to_number réduisant la taille des requêtes
Correction du cache UDF pour prendre en compte la modification de la base de données de requêtes
Optimisation de la fonction
maskTransmission de PATTERN au lecteur de secours NVS lors de l’inférence du schéma Parquet
Conversion des types nuls et structurés
Nouvelles fonctionnalités¶
Introduction de l’indice de jointure DIRECTED
Intégration de XML inferSchema
1.18.0 (19 mars 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Ajout d’un mappage de type JDBC manquant
Prise en charge du schéma fourni par l’utilisateur dans Parquet
Gestion souple des caractères UTF-8 non valides en JSON
Résolution des colonnes LCA uniquement si elles sont effectivement utilisées
Optimisation de la génération de requêtes get_json_object
Suppression du point-virgule de la requête SQL
Définition de la valeur
processInBulk=Truepar défaut pour les lectures JSON et correction de l’inférence du schémaNullTypeCorrection d’un bogue concernant la lecture incorrecte des zones de préparation
Ajout d’une non-vérification dans l’enregistrement UDF
Réduction de la limite pour le message d’erreur
Autorisation des champs manquants dans le schéma fourni par l’utilisateur
Inférence de compression JSON et CSV
Correction de
coalesce(1)qui générait un seul fichier
Nouvelles fonctionnalités¶
Ajout de la méthode
execute_jarpour lancer des charges de travail Java/Scala
Snowpark Submit¶
Corrections de bogues¶
Correction de l’erreur d’ingestion avec l’indicateur
--wait-for-completion
1.17.0 (13 mars 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Inférence de compression JSON etCSV.
Correction pour
coalescequi générait un seul fichier.Réorganisation de la lecture JSON pour utiliser
COPY INTOlors de la lecture d’un seul fichier et ajouter l’inférence de schémaVariantType.Autoriser le chargement JSON sans schéma explicite.
Correction de
multi_linedans JSON.Correction du schéma d’inférence JSON pour éviter d’analyser des fichiers entiers.
Gérer correctement la conversion vers l’horodatage
ltz.Limitation de la valeur de hachage renvoyée.
Correction de
repartitionavecpartitionBy.Correction pour utiliser l’en-tête de section
[connections.spark-connect]dansconfig.toml.Conversion des jetons Java au format
date/timestampen équivalents Snowflake pour les lectures de fichiers CSV.Calcul du schéma des fonctions
pivot.Correction des UDTFs dans les jointures latérales avec aliasing.
Alignement du résultat de la commande SQL
SET.Correction du type de retour pour les fonctions
CEILetFLOOR.Amélioration de la génération de requêtes dans
unbase64v2.Correction de certaines des options du mappage Snowflake pour CSV.
Correction de la sérialisation pour
POJO.Amélioration des messages d’erreur d’en-tête CSV.
Amélioration de la logique de détection
mapTypeavec:code:try_castpour les lectures de fichiers Parquet.
Nouvelles fonctionnalités¶
Prise en charge de
reduceGroupsAPI.Prise en charge de la spécification du nom de connexion dans
init_spark_session.Ajout d’un paramètre de configuration pour utiliser UDF pour
unbase64.
1.16.0 (12 mars 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Optimisation de la génération SQL dans la fonction
unbase64.Correction de la régression
from_jsonCorrection concernant les enregistrements qui s’étendent sur plusieurs limites de blocs de compression BZ2
Correction du mappage de nullabilité dans un attribut non résolu
Initialisation d’une session
spark-connectavec une connexion quelconque, et non uniquement avec une connexion nomméespark-connectAjout de la validation d’options XML
Suppression de l’option CSV ESCAPE lorsqu’elle correspond au caractère guillemet pour éviter les erreurs de compilation
Correction de la conversion incorrecte des tuples nommés dans
productEncoderVérifier que
mergeSchemapour CSV et JSON n’est pas pris en chargeCorrection de l’aller-retour de type complexe Parquet (écriture + lecture)
Correction du schéma pour
pivot/unpivotCorrection du type de retour pour les fonctions
MODetPMODCorrection de l’extraction d’en-têtes CSV pour les fichiers dont les lignes d’en-tête sont vides
Vérifier correctement les fuseaux horaires et remplacer la sérialisation des dates et heures sous forme de chaînes de caractères par une sérialisation basée sur l’époque
Mise à jour de la vérification de la version Java pour Windows
Aplatir les appels
withColumnimbriquésModifier la logique pour
Literal _IntegralTypedans les opérations d’addition et de soustractionRetour de
LongTypepour les fonctionsCOUNTLecture JSON : test de compression = bz2/bzip2/aucun
Amélioration des performances de
to_varchar/to_charAméliorer la comparaison lors des tests d’E/S
Définir
multi_linesurFalsepar défaut pour la copie JSON
Snowpark Submit¶
Corrections de bogues¶
Lancer une erreur sur un pool de calcul non spécifié.
1.15.0 (6 Mars 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Suppression de l’analyse des résultats lors de l’appel de
df.count()S’assurer que le schéma d’inférence s’exécute sur des lignes limitées lors de la lecture JSON
Correction de
createDataFramepour les types d’intervalleModification de la logique de
Literal _IntegralTypedans les opérations de multiplication et de divisionÉlargir et imposer le type pour les opérations
SetCorrection de la prise en charge des étiquettes multiples
neo4jModification des métadonnées JAR afin que Grype ne détecte pas la vulnérabilité de Netty
Renvoi du type correct pour la fonction
ANY_VALUERenvoi du type élargi pour la séquence
Ajout de la prise en charge de la configuration
spark.sql.parquet.inferTimestampNTZ.enabledRenommage/conversion de colonnes par lots en
_validate_schema_and_get_writerBlocage de JDBC lors de requêtes partitionnées avec une taille de récupération spécifiée
Renvoi d’un message d’exception tronqué lorsqu’il dépasse les limites de l’en-tête HTTP
Correction de
map_type_to_snowflake_typepourBigDecimalCorrection de la précision décimale littérale et de l’échelle
Amélioration de la génération aléatoire de chaînes
Faire en sorte que le chargement des fichiers JSON compressés au format BZ2 ignore les enregistrements corrompus
Nouvelles fonctionnalités¶
Utiliser des fichiers en zone de préparation issus de la configuration des UDFs Scala
Utiliser
TRY_CASTpermissif lors de la lecture JSONRendre le nombre de threads du serveur configurable
Snowpark Submit¶
Corrections de bogues¶
Réintégrer
init_spark_session()dans les testsMettre à jour la sortie de ligne de commande
snowpark-submitpour clarifiersnowflake-connection-nameest nécessaire.
1.14.0 (19 février 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Mise en cache du type de table lors de l’exécution de
saveAsTableOptimisation de l’entrée littérale pour la sous-chaîne et le casting de type pour
coalesceGestion du débordement décimal dans
avg/meanet correction de la coercition du type décimalIceberg - Préservation des autorisations en cas de réécriture
Normalisation du mode SQL intermédiaire
Optimisation de
from_utc_timestamp/to_utc_timestamppour le fuseau horaire littéralGestion des valeurs JSON nulles dans les types structurés pour correspondre à la sémantique Spark
Émulation des types intégraux lors de la création de tables à partir de SQL
Correction d’un cas périphérique lors du mappage de lignes imbriquées dans les UDFs Scala
Correction de la façon dont Parquet gère la lecture et l’écriture de types de données structurés complexes
Prise en charge de l’enregistrement de l’argument ignoré pour les fichiers Parquet
Ajout de la prise en charge du dépôt d’artefacts
Correction de la nullabilité des tableaux dans les UDxF Scala
Correction de
log1ppour les arguments de la plage (-1, 0)Correction de
first_valueetlast_valuedans le contexte agrégéCorrection de la lecture de
DayTimeIntervalTypepour le client Scala
Nouvelles fonctionnalités¶
Gestion correcte des fuseaux horaires dans les UDFs Scala
Prise en charge de Java 11 et 17 sans aucune configuration
Mises à jour de Snowpark Submit¶
Nouvelles fonctionnalités¶
Prise en charge de
snowpark-submitpour Python 3.9Amélioration de
init_spark_sessionpour le rendre utilisable dans le flux de travailsnowpark-submit
1.13.0 (13 février 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Correction d’un problème lié à la fonction
splitMise à niveau de la dépendance snowflake-snowpark-python vers la version 1.44
Correction de la correspondance des dialectes
Neo4jpour améliorer la traduction SQLCorrection de l’ID d’opération renvoyé dans les réponses d’exécution à des fins de cohérence
Correction du traitement des métadonnées
gRPCpour les connexions de canaux TCP
Nouvelles fonctionnalités¶
Ajout de la prise en charge de
partition_hintdans les opérationsmapPartitionsAjout de la prise en charge du lecteur XML pour les scénarios avec des schémas définis par l’utilisateur
1.11.0 (28 janvier 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Préservation des colonnes masquées après divers opérateurs DataFrame
Correction de problèmes pour les types d’entrée udf scala (
byte,binary,scala.math.BigDecimal)
Autres mises à jour¶
Ajout des arguments définis par l’utilisateur
snowpark-submità des fins de commentaire
1.10.0 (22 janvier 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Correction d’une erreur non définie pour la configuration de session.
Utilisation de la copie pour charger des fichiers CSV en parallèle.
Correction des écritures pour les DataFrames en utilisant des jointures externes.
Gestion des valeurs nulles dans les UDFs Scala.
Optimisation de la génération de requêtes CTE avec la protection des paramètres.
Conversion bloquée des arguments de
DATEDIFF.Correction de l’ajout de fichiers partitionnés et la lecture de partitions nulles.
Amélioration des performances par 10 pour la conversion entre les bases 10 et 16 à l’aide de SQL.
Nouvelles fonctionnalités¶
Remplacement uniquement des partitions modifiées pour les fichiers Parquet.
Autres mises à jour¶
Logique mise à jour pour détecter si Snowpark Connect for Spark est exécuté sur XP.
Prise en charge de l’écriture dans une table avec un type de données VARIANT dans Snowflake.
Suppression des journaux d’informations inutiles.
Déplacement des tests Java de la tâche de tests Scala vers une tâche distincte.
Mise à jour de la version de la dépendance pour gcsfs.
Snowpark Submit¶
Aucun.
1.9.0 (14 janvier 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Correction de la sérialisation des tuples Scala.
Correction du chargement de JSON fichiers volumineux.
Implémentation de petits correctifs pour les problèmes des clients.
Implémentation des corrections pour les comparaisons de structures.
Ajout du traitement des DataFrames pour la colonne 0.
Correction du chemin de chargement des fichiers.
Correction de
Upload_files_if_neededne s’exécutant pas en parallèle.Amélioration de l’inférence de type d’entrée lorsque les types d’entrée UDF ne sont pas définis dans le proto.
Correction des cas Edge NA.
Nouvelles fonctionnalités¶
Prise en charge de la lecture d’un fichier JSON BZ2.
Prise en charge des UDFs Scala dans Snowpark Connect for Spark côté serveur.
Implémentation d’une conversion entre la chaîne et
daytime.Ajout de la prise en charge des UDFs Scala dans
group_map.
Snowpark Submit¶
Corrections de bogues¶
Réduction des noms de charge de travail générés.
1.8.0 (07 janvier 2026)¶
Snowpark Connect for Spark¶
Corrections de bogues¶
Correction du traitement JAVA_HOME pour Windows.
Nouvelles fonctionnalités¶
Prise en charge de la source de données
neo4jvia JDBC.
Snowpark Submit¶
Aucun.