El equipo de Polars ha lanzado la versión 2.0 de su biblioteca de análisis de datos, destacando por la implementación de soporte out-of-core (spill-to-disk) por defecto y el tratamiento de SQL como un componente de primera clase. Esta actualización busca mejorar la resiliencia en cargas de trabajo con alta memoria y acelerar la iteración en el desarrollo asistido por IA.
El cambio más significativo es que la llamada a collect en un LazyFrame ahora utiliza el motor de streaming por defecto, lo que reduce drásticamente el uso de memoria y mejora el rendimiento en la mayoría de las consultas. Para garantizar la consistencia, los usuarios que requieran el orden de filas explícito pueden activar la opción maintain_order=True. Además, el soporte out-of-core se activa automáticamente cuando la RAM alcanza el 80% de su capacidad, permitiendo que las operaciones como sort y funciones de ventana se escriban en disco para completar la ejecución, con un presupuesto de disco predeterminado de 64 GB.
En cuanto a rendimiento, Polars 2.0 supera a DuckDB y DataFusion en los benchmarks TPC-H y TPC-DS en configuraciones de 16 vCPUs, aunque presenta una sobrecarga constante al escalar a 192 núcleos, un problema que la empresa planea corregir en la próxima versión. La nueva versión también introduce el tipo de dato Map nativo, permitiendo consultas de diccionarios directas, y adopta un enfoque más estricto en la validación de tipos para detectar errores de esquema temprano, facilitando la depuración en pipelines complejos.
