Hive 的 ORC、Parquet 等列式存储的优点

网友投稿 264 2022-08-23

Hive 的 ORC、Parquet 等列式存储的优点

ORC:

ORC 文件是自描述的,它的元数据使用 Protocol Buffers 序列化,文件中的数据尽可能的压缩以降低存储空间的消耗;以二进制方式存储,不可以直接读取;自解析,包含许多元数据,这些元数据都是同构 ProtoBuffer 进行序列化的;会尽可能合并多个离散的区间尽可能的减少 I/O次数;在新版本的 ORC 中也加入了对 Bloom Filter 的支持,它可以进一 步提升谓词下推的效率,在 Hive 1.2.0 版本以后也加入了对此的支 持。

Parquet:

Parquet 支持嵌套的数据模型,类似于 Protocol Buffers,每一个数据模型的 schema 包含多个字段,每一个字段有三个属性:重复次数、数据类型和字段名;Parquet 中没有 Map、Array 这样的复杂数据结构,但是可以通过 repeated 和 group 组合来实现;通过 Striping/Assembly 算法,parquet 可以使用较少的存储空间表示复杂的嵌套格式,并且通常 Repetition level 和 Definition level 都是较小的整数值,可以通过 RLE 算法对其进行压缩,进一步降低存储空间;Parquet 文件以二进制方式存储,不可以直接读取和修改,Parquet 文件是自解析的,文件中包括该文件的数据和元数据

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:40道Python经典面试题(附答案)(python基础面试题及答案)
下一篇:算法工程师面试各大预训练模型的对比
相关文章

 发表评论

暂时没有评论,来抢沙发吧~