1.textfile
Hive数据表的默认格式,磁盘开销大,数据解析开销大
存储方式:行存储
压缩方式:使用Gzip,Bzip2等压缩算法压缩,压缩后的文件不支持split
但在反序列化过程中,必须逐个字符判断是不是分隔符和行结束符,因此反序列化开销会比SequenceFile高几十倍。
--创建数据表:
create table if not exists textfile_table(
site string,
url string,
pv bigint,
label string)
row format delimited fields terminated by '\t'
stored as textfile;
--插入数据:
set hive.exec.compress.output=true; --启用压缩格式
set mapred.output.compress=true;
set mapred.output.compression.codec=org.apache.hadoop.io.compress.GzipCodec; --指定输出的压缩格式为Gzip
set io.compression.codecs=org.apache.hadoop.io.compress.GzipCodec;
insert overwrite table textfile_table select * from T_Name;
2.sequencefile
Hadoop API提供的一种二进制文件,以的形式序列化到文件中
存储方式:行