hive行存储与列存储

首先判断hive表是行存储还是列存储

判断方法:

1、使用hiveSQL"show create table table_name",这种方式,可以查看建表时候指定的那种方式;

2、使用hiveSQL"select。。。。"查询语句(随意查询),看是否执行mr:执行,是行存储,不执行,列存储。

3、开启本地模式,去日志中查找表是否执行过mr。

4、查看建表语句:行存储:textfile sequencefile(仅此两种),列存储(orc,parquet)

行存储与列存储

行式存储下一张表的数据都是放在一起的,但列式存储下都被分开保存了。

优缺点

行式存储:

优点:数据被保存在一起了,insert和update更加容易

缺点:选择(selection)时即时只涉及某几列,所有数据也都会被读取

列式存储:

优点:查询时只有涉及到的列会被读取;投影(projection)很高效;任何列都能作为索引

缺点:选择完成时,被选择的列要重新组装,insert/update会比较麻烦

 

posted @ 2020-12-16 10:22  南星半夏  阅读(2329)  评论(0编辑  收藏  举报