Polars 2.0 : SQL natif et moteur streaming
Original : Release of Polars 2.0
Pourquoi c'est important
Polars s'impose comme alternative sérieuse à DuckDB pour l'analyse SQL in-process à grande échelle.
Polars 2.0 est disponible depuis le 6 octobre 2026. La bibliothèque Python/Rust de traitement de données active par défaut son moteur streaming et le support SQL natif, surpassant DuckDB et DataFusion sur les benchmarks TPC-H et TPC-DS.
Polars 2.0 marque un tournant pour la bibliothèque open source de manipulation de données en Rust/Python. Première grande nouveauté : le moteur streaming est désormais activé par défaut lors d'un appel à `collect()` sur un LazyFrame, ce qui réduit significativement la consommation mémoire sur la majorité des requêtes. Le support « spill-to-disk » (traitement hors mémoire vive) fait aussi son entrée en version initiale.
Sur le plan SQL, Polars revendique désormais une couverture complète, avec des optimisations profondes du moteur : reclassement des jointures, meilleure élimination des sous-plans communs, et filtres dynamiques/bloom. Les benchmarks TPC-H et TPC-DS, menés sur deux machines AWS (c7a.4xlarge à 16 vCPU/32 Go et c7a.metal à 192 vCPU/384 Go), placent Polars en tête face à DuckDB 1.5.6, DuckDB 2.0 alpha et DataFusion 54.0.0. DataFusion a subi des timeouts et des erreurs mémoire sur certaines requêtes. Polars présente toutefois un overhead à très haute parallélisation (192 threads), déjà identifié par l'équipe pour un correctif prochain.
Autres apports : un nouveau type `Map`, une gestion plus stricte des types de données (dtypes) pour un retour d'erreur plus rapide, et une meilleure compatibilité avec les boucles d'itération des outils d'IA.