- Published on
Polars
- Authors

- Name
- Lif
Polars
Polars是基于Rust写的一个速度很快的DataFrame库。
它拥有以下特性:
- 多核利用
- 优化查询减少不必要的工作、内存分配
- 处理大于内存的数据集
- 拥有一致并且可预测的
API - 具有严格的格式(在运行查询之前应该知道数据类型)
Polars拥有 C、C++ 的性能,并且完全控制查询引擎的性能关键部分。
Polars竭尽全力:
- 减少冗余副本
- 高效遍历内存缓存
- 最大限度减少并行性争用
- 以快的形式处理数据
- 重用内存分配
Polars 还可以控制IO,允许它保存冗余副本并将 projections 和 predicates 降低到扫描级别。
Polars 从头开始编写,旨在并行化 DataFrame 上的查询。
Polars 拥有 lazy 和 semi-lazy 模式。
在 lazy 模式,我们能够对整个查询做优化,进一步提升性能和内存压力。
Pandas
Pandas 也是用于处理 DataFrame 的库。
Polars 和 Pandas 相比,有以下优点:
- 内部实现导致更少的开销
- 默认并行处理与优化