HeadlinesBriefing favicon HeadlinesBriefing.com

Polars 2.0 RC:流式引擎默认启用,性能提升5倍

Hacker News •
×

Polars 已发布版本 2.0 的第一个发布候选版,重点在于移除过去的设计决策并更新默认值,而非添加主要功能。最显著的变化是将流式引擎设为所有 Lazy Frame 查询通过 collect() 的默认引擎,团队预计这将使性能提升约 5 倍,并为普通用户带来显著的内存改进。此更改需要主版本号升级,因为流式引擎默认不保证诸如 join、group_by 和 unpivot 等操作的行顺序。需要可观察行顺序的用户可通过 maintain_order=True 选择加入,或通过 pl.Config.set_engine_affinity("in-memory") 恢复内存引擎,或在每个查询中使用 engine="in-memory"。

Polars 2.0 还强化了行为以快速失败并提前捕获错误,这在 AI 驱动的开发中日益重要,因为代理可通过 collect_schema() 早期验证查询结构。例如,is_in 的无损类型强制转换:之前,Int64 值与 Float64 列表比较时会静默强制转换,导致超过 2^53 精度限制时出现假阳性。现在这将触发无效操作错误,要求显式转换。水平连接也变得更加严格。

关键实体:公司:Polars