建表语句:
CREATE EXTERNAL TABLE `app.table1`(
.....
)
PARTITIONED BY (
`dt` string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY '\t'
STORED AS INPUTFORMAT --当查询时会用到,需要查询lzo格式的文件!!
'com.hadoop.mapred.DeprecatedLzoTextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat';
表格式是lzo,查询时需要对lzo文件查询,所以在写入时,也需要写入lzo格式的文件!!
写表语句:
set mapred.output.compress=true;
set hive.exec.compress.output=true;
set mapred.output.compression.codec=com.hadoop.compression.lzo.LzopCodec;
-- 前三行很重要,指定表的数据文件是lzo格式