Arrow 内存列式数据存储格式

2022-11-09 warehouse

定义了内存布局格式,从而允许在不同的系统之间高效地共享数据,通过减少不必要的序列化和反序列化成本,从而提高不同系统间传递数据效率。

简介

Arrow Columnar Format 文档中的定义,其设计格式时有如下的特性:

  • 对于 Scan 擦作,数据可以邻近访问。
  • O(1) 级别的随机访问。
  • 对于 SIMD 以及向量操作友好。
  • 共享内存中支持 Zero-Copy 方式。

为此,采用列式数据保存,元数据通过 FlatBuffers 保存,这也是一个无需反序列化的高效数据存储格式。

除了 Arrow 之外,还包括了 ArrowStream 格式,后者支持流方式处理数据。

参考