hadoop hive的lzo总结

来源:互联网 发布:手绘软件sai下载 编辑:程序博客网 时间:2024/05/22 06:56

hive中指定压缩编解码器:
hadoop集群启用了压缩,就需要在Hive建表的时候指定压缩时所使用的编解码器,否则Hive无法正确读取数据。
Gzip和Bzip2由于是hadoop默认支持的,所以无需指定特殊的编解码器,只要指定Text类型即可。

CREATE TABLE `adorderdata`(  `date` int COMMENT '日期eg:20160618',   `rogmv` bigint COMMENT '影响订单金额',   `aocnt` int COMMENT '全部的订单量',   `aogmv` bigint COMMENT '全部订单金额')COMMENT 'dsporder'ROW FORMAT DELIMITED   FIELDS TERMINATED BY '\t' STORED AS INPUTFORMAT   'org.apache.hadoop.mapred.TextInputFormat' OUTPUTFORMAT   'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'LOCATION  'hdfs://ns3/user/ss_ad/pppp.db/ztadorderdata'

create external table cp_ad_table (}partitioned by(dt string)ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'WITH SERDEPROPERTIES('field.delim' = '\t','serialization.null.format' = '')STORED AS INPUTFORMAT "com.hadoop.mapred.DeprecatedLzoTextInputFormat"OUTPUTFORMAT "org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat"
日志用lzop在本地压缩好了,直接丢到hdfs上就可以了。

假如源日志是lzo压缩的,输出的时候也希望使用lzo压缩。输入是lzo,输出也可以lzo。或者输入是text,输出是lzo。

-inputformat com.hadoop.mapred.DeprecatedLzoTextInputFormat -jobconf mapred.output.compress=true -jobconf mapred.output.compression.codec=com.hadoop.compression.lzo.LzopCodec 


1 0
原创粉丝点击