hive存储格式对比

1、TextFile

默认的存储格式,普通的文本文件,行式存储,无压缩,基本不采用

2、Sequencefile

行式存储,key vaule 的形式存在,二进制文件,支持压缩,一般采用Block压缩。写和读比较快,不允许load方式加载数据,需要insert。

在大数据计算中,一般的行式存储基本不采用

3、Rcfile

数据按行分块,每块按照列存储,提高查询效率,不允许load方式加载数据,需要insert

4、Orc

数据按行分块,每块数据按照列存储,条形存储,对rc进行优化,存储了一些索引以及其他的辅助信息,可以快速查询检索

5、Parquet

面向列的二进制存储文件,大型查询效率高效,支持压缩格式,默认snappy压缩方式,

目前市面上使用最多的是Orc 和 Parquet ,

那么 Orc 和 Parquet 的区分

a、均采用列式存储

b、都是数据按行分组,形成RowGroup ,再按照列进行存储

 不同点

Parquet是等数量记录划分,ORC划分的stripe不一定相同

Parquet更能存储嵌套数据,且适配Spark计算引擎

Parquet在按列存储的基础上,对ColumnChunk进行分页;对于字符类型的字段可采取字典编码形成DictionaryPage,提升存储效率

Parquet在Page上采用索引机制,记录类型Max-Min等指标提升查询效率

ORC 支持 ACID 属性

ORC 的压缩效率更高

hive存储格式对比_第1张图片

 hive存储格式对比_第2张图片

 无特殊要求,选择Orc即可

你可能感兴趣的:(HIVE,hive,hadoop,数据仓库)