当前位置: 首页 > 工具软件 > Apache Arrow > 使用案例 >

Apache-Arrow是什么?

帅彦
2023-12-01

Apache-Arrow是什么?

Arrow是一种数据存储格式,以及对这个格式的一系列API及多语言的SDK。

当上层应用使用这个接口访问这些数据的时候,大家就不用在不同的私有格式之间转换。

从而省去了大量的序列化和反序列化的计算资源。

基础概念

一、Schema:

​ Schema下有一组Field,以及一个Metadata进行描述。

​ Schema下的Metadata是一个key-Value的map

二、Field:

​ 每个Field由《名字》,《类型》和一组子《Field》组成。

​ 类型分为基础类型和复合类型。

​ 类型还可以有一个字典编码格式描述。描述十分排序,字典ID,以及索引类型。

三、VectorSchemaRoot:

​ 保存Schema和数据FieldVector

​ 保存有行数量rowCount

​ 保存有Field到FieldVector的Map,以便方便快速找到数据。

四、FieldVector:

​ 一个列数据的数组

​ 底层靠ArrowBuf进行底层内存的实际访问。

 类似资料: