Polars 2.0 发布:默认启用溢写磁盘,SQL 成为一等公民,基准测试领先 DuckDB
DataFrame 库 Polars 发布 2.0 版,带来初版外存计算(溢写磁盘)、大量核心性能优化、一等 SQL 支持和新的 Map 类型。
DataFrame 库 Polars 10 月 6 日发布 2.0 版。官方列出的重点包括:初版外存(out-of-core,溢写磁盘)支持默认启用;大量核心性能改进;SQL 成为一等公民;新增 Map 数据类型;以及对数据类型和显式写法更严格的要求,以便更快发现错误。
官方称 Polars 的 SQL 覆盖面在过去几个月大幅扩展,优化器和执行引擎也加入了连接重排、更好的公共子计划消除以及动态谓词和布隆过滤器等改进。在基于 TPC-H 和 TPC-DS 数据的测试中,团队在 AWS c7a.4xlarge 和 c7a.metal 机型上把 Polars SQL 与 DuckDB 1.5.6、DuckDB 2.0 alpha 和 DataFusion 54.0.0 对比,称默认配置的 Polars 在除一项外的所有基准中最快。
官方也承认,在 192 线程的大机器上 Polars 有固定开销,会拖慢小数据量查询,问题已定位,有望在下个版本修复。基准测试代码已公开,欢迎复现。