采用
Apache Parquet是一种开源的列式数据文件格式,旨在实现高效的数据存储和检索。 它提供高性能压缩和编码方案来批量处理复杂数据,并且得到许多编程语言和分析工具的支持。
目前典型的Olap产品都提供了解基于CSV和Parquet文件的查询支持,如DuckDB,ClickHouse等,所以在一些数据储存的场景中, 对比CSV,Parquet包括schema支持,更丰富的数据类型,同时性能更高,可以一些场景可以考虑使用Parquet。
此外在一些Open Data的场景中,Parquet也逐渐替代CSV,因为Parquet支持更多的数据类型,更好的压缩率,更好的性能等。
Parquet同时提供了对应的命令行,请使用cargo install parquet --features=cli进行安装。
Parquet & Friends
- GeoParquet: Encoding geospatial data in Apache Parquet
- Apache ORC: the smallest, fastest columnar storage for Hadoop workloads
- Lance: modern columnar data format for ML
- Carpet: Parquet Serialization and Deserialization Library for Java
References
- Apache Parquet: https://parquet.apache.org/
- Apache Parquet Rust Implementation: https://github.com/apache/arrow-rs/tree/master/parquet
- Parquet File Format: The Complete Guide - https://coralogix.com/blog/parquet-file-format/
- CSV vs Parquet vs JSON for Data Science: https://weber-stephen.medium.com/csv-vs-parquet-vs-json-for-data-science-cf3733175176