facebookincubator/nimble
New and extensible file format for storage of large columnar datasets.
What it solves
Nimble 是一种列式文件格式,旨在取代 Apache Parquet 和 ORC 等现有格式,特别针对大型数据集。它解决了当前格式在处理“宽”表(即包含数千列的表格)时的低效问题,这类表格在机器学习训练表和特征工程工作负载中非常常见。
How it works
Nimble 将流式编码与文件的物理布局解耦,允许进行可扩展且递归(级联)的编码。它利用 Flatbuffers 进行高效的元数据访问,并采用块编码而非流式编码,以确保在读取和解码时具有可预测的内存使用。该系统设计上对 SIMD 和 GPU 友好,以利用高度并行的硬件。
Who it’s for
它适用于处理海量数据集的开发人员和数据工程师,特别是在机器学习训练和特征工程中,宽表结构非常普遍的领域。
Highlights
- Optimized for Wide Tables: 高效支持数千到数万列。
- Extensible Encoding: 允许用户添加新编码或递归地应用它们。
- Hardware Acceleration: 使用 SIMD 和 GPU 友好型编码,旨在利用高并行性。
- Efficient Metadata: 使用 Flatbuffers 以减少访问大型元数据部分的开销。
- Unified Implementation: 作为单一库提供,以防止在不同环境中的碎片化。
相关
- 项目
- 项目
- 项目
- 项目
- 项目