Hive支持的存储数据的格式主要有:TEXTFILE 、SEQUENCEFILE、ORC、PARQUET。
TEXTFILE 、SEQUENCEFILE为行存
ORC、PARQUET为列存
TextFile格式:默认格式,数据不做压缩,磁盘开销大,数据解析开销大。可结合Gzip、Bzip2使用,但使用Gzip这种方式,hive不会对数据进行切分,从而无法对数据进行并行操作。
Orc格式:Orc (Optimized Row Columnar)是Hive 0.11版里引入的新的存储格式。
文件存储格式的对比:
(1)创建表,存储数据格式为TEXTFILE
create table log_text (
track_time string,
url string,
session_id string,
referer string,
ip string,
end_user_id string,
city_id string
)
row format delimited fields terminated by '\t'
stored as textfile; //此行可以省略,默认的存储格式就是text