Apprendre  /  Nouveautés

Apache Spark 4.2 : les nouveautés pour les analystes et les data engineers

QUALIFY arrive enfin dans Spark SQL, la capture des changements devient une fonctionnalité à part entière et PySpark est plus rapide par défaut. Les nouveautés de Spark 4.2 à connaître, et les changements de comportement à tester d'abord.

Nouveautés8 min de lectureMis à jour le 17 octobre 2026
PythonSQLDatabricksNouveautés
Tous les guides et antisèches

Apache Spark 4.2.0 est sorti le 14 juillet 2026 : c'est la troisième version de la série 4.x, avec plus de 1 700 tickets et plus de 250 contributeurs. Elle arrive maintenant sur les plateformes que la plupart des équipes utilisent vraiment : Databricks l'intègre dans Databricks Runtime 19.0, tandis que le nouveau Runtime 2.0 de Microsoft Fabric repose sur Spark 4.1. Si vous écrivez du Spark SQL ou du PySpark, c'est la version qui rend le travail quotidien nettement plus agréable, et elle apporte la capture des changements et une couche sémantique dans le Spark open source.

1700+Tickets résolusdans Spark 4.2.0
250+Contributeursà cette version
25Version de Java prise en chargeSpark compile et tourne désormais sur Java 25

QUALIFY, enfin

Si vous avez utilisé Snowflake, BigQuery ou Databricks SQL, vous connaissez déjà QUALIFY : il filtre sur le résultat d'une fonction de fenêtre, comme HAVING filtre sur un agrégat. Le Spark SQL open source le prend désormais en charge, et la requête classique « dernière ligne par client » perd sa sous-requête.

SQL
SELECT customer_id, order_id, order_date
FROM orders
QUALIFY ROW_NUMBER() OVER (
  PARTITION BY customer_id ORDER BY order_date DESC
) = 1;

Autres améliorations SQL : le scripting SQL gagne les curseurs, la syntaxe pipe accepte | en plus de |> et prend en charge les agrégats, PIVOT accepte les alias, DROP TABLE peut supprimer une vue, une fonction time_bucket regroupe les horodatages en intervalles fixes, et array_agg, collect_list et collect_set acceptent IGNORE NULLS. Pour réviser les fonctions de fenêtre, lisez les fonctions de fenêtre SQL expliquées.

Les nouveautés phares

Capture des changements
Une clause CHANGES et des API DataFrame, PySpark et Connect lisent les changements ligne par ligne, en batch ou en streaming.
Auto CDC
Les Spark Declarative Pipelines appliquent un flux de changements à une table cible en SCD de type 1, sans logique MERGE écrite à la main.
Vues de métriques
CREATE VIEW ... WITH METRICS définit les métriques métier une seule fois, pour le SQL, les outils de BI, les applications et les agents IA.
Géospatial
Types GEOMETRY et GEOGRAPHY, fonctions ST_ et lecture-écriture Parquet, activés par défaut.
Jointures NEAREST BY
Une jointure top-K pour les problèmes de « correspondance la plus proche », comme apparier des embeddings ou des lieux voisins.
Transactions DSv2
Les connecteurs peuvent valider plusieurs opérations de façon atomique.
Chemin SQL
SET PATH et CURRENT_PATH() contrôlent où Spark cherche les fonctions et les vues.
Interface web
Mode sombre, plans de requête consultables et zoomables, et comparaison de plans côte à côte.
Java 25
Spark compile et tourne sur Java 25. La prise en charge de R 3.x est abandonnée.

La capture des changements devient une fonctionnalité à part entière

La plupart des pipelines consacrent une quantité étonnante de code à déterminer ce qui a changé depuis la veille. Spark 4.2 standardise tout cela. Les connecteurs peuvent exposer un flux de changements, Spark SQL le lit avec une nouvelle clause CHANGES, PySpark dispose d'une API changes() équivalente, et les lectures en streaming peuvent renvoyer les changements nets. Par-dessus, Auto CDC dans les Spark Declarative Pipelines applique ces changements à une table cible comme une dimension à évolution lente de type 1 : la dernière version de chaque ligne l'emporte, sans écrire d'instruction MERGE à la main.

La capture des changements dans Spark 4.2
Table sourceinsertions, mises à jour, suppressions
CHANGESlit le flux de changements
Auto CDCapplique en SCD de type 1
Table cibletoujours à jour

Vues de métriques : une couche sémantique dans Spark

Les vues de métriques permettent de déclarer mesures et dimensions une seule fois, avec CREATE VIEW ... WITH METRICS, puis de les réutiliser dans le SQL, les tableaux de bord et les agents IA. C'est la même idée que le dbt Semantic Layer, les vues sémantiques de Snowflake et les modèles sémantiques Power BI : une seule définition du « chiffre d'affaires » au lieu de cinq. Si cette façon de modéliser est nouvelle pour vous, notre guide sur le schéma en étoile et la modélisation dimensionnelle explique la logique faits-dimensions qui la sous-tend.

PySpark : plus rapide par défaut

Les UDF Python optimisées par Arrow et l'échange de données via Arrow entre la JVM et Python sont désormais activés par défaut. Arrow déplace les données par colonnes plutôt que ligne par ligne, ce qui est généralement bien plus rapide. PySpark gagne aussi DataFrame.zipWithIndex, des fonctions de similarité et de distance entre vecteurs, et le Real-Time Mode pour les requêtes sans état.

Terminal
pip install --upgrade "pyspark==4.2.0"

Streaming et performances

  • Noms de sources stables : nommez une source de streaming et vous pourrez ajouter, retirer ou réordonner des sources sans casser les checkpoints.
  • État plus sûr : réparation automatique des snapshots et sommes de contrôle par ligne détectent un état corrompu.
  • Plans plus rapides : pushdown des jointures à travers UNION, génération de code whole-stage pour UNION, fenêtres et lecture Parquet plus rapides, et sérialisation ORC des types imbriqués environ deux fois plus rapide.
  • Spark Connect : head(), take() et tail() ne parcourent plus toute la table.

Où l'utiliser

Databricks

Spark 4.2
Runtime
Databricks Runtime 19.0
  • Vues de métriques, Auto CDC et QUALIFY disponibles dès maintenant

Microsoft Fabric

Spark 4.1
Runtime
Fabric Runtime 2.0 (GA)
  • Les nouveautés de Spark 4.2, comme QUALIFY, attendent un runtime ultérieur

Open source

Spark 4.2.0
Où l'obtenir
spark.apache.org ou pip
  • Tourne sur Java 25

Testez vos connaissances

1/3Que fait QUALIFY ?

2/3Sous quelle forme Auto CDC applique-t-il les changements ?

3/3Quel changement de PySpark est désormais activé par défaut ?

Vous travaillez plus en Python qu'en Spark ? Lisez les nouveautés de Polars 2.0 et le guide de migration vers pandas 3.0. Pour le format de table du lakehouse sous-jacent, lisez Iceberg v3 expliqué.

Sources : les notes de version d'Apache Spark 4.2.0 et le billet de blog de Databricks « Introducing Apache Spark 4.2 » (16 juillet 2026). Consultez les notes de version complètes pour chaque changement de comportement avant de migrer.

Alessandro Ecclesie AgazziÉcrit par Alessandro Ecclesie Agazzi, analytics engineer à Londres. Mis à jour le 17 octobre 2026. À propos

Cet article vous a été utile ?

De nouveaux guides et décryptages des nouveautés en data et en IA paraissent ici régulièrement. Suivez-moi sur LinkedIn ou partagez cet article avec un collègue.