这篇文章给大家分享的是有关hive如何开启lzo压缩的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、网络空间、营销软件、网站建设、南乐网站维护、网站推广。
涉及到jar包的编译以及core-site文件的配置
可以在mapred-site文件中,设置是在map还是reduce端开启压缩。在这里只是设置mapreduce的压缩。hadoop和hive是可以单独设置的。
在hive客户端中设置参数,开始hive的map或者reduce端的压缩。
set mapred.output.compress=true; set hive.exec.compress.output=true; # 必须是LzopCodec才支持切片 set mapred.output.compression.codec=com.hadoop.compression.lzo.LzopCodec;
CREATE EXTERNAL TABLE ods_log (`line` string) PARTITIONED BY (`dt` string) STORED AS INPUTFORMAT 'com.hadoop.mapred.DeprecatedLzoTextInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION '/warehouse/gmall/ods/ods_log';
INPUTFORMAT 是指从表中读取时,支持从lzo文件中读取
OUTPUTFORMAT是指写入数据到文件,输入数据的格式
load data inpath '/origin_data/gmall/log/topic_log/2020-06-14' into table ods_log partition(dt='2020-06-14');
将数据导入到hive中后,数据会保存在lzo文件中
hadoop jar /opt/module/hadoop-3.1.3/share/hadoop/common/hadoop-lzo-0.4.20.jar com.hadoop.compression.lzo.DistributedLzoIndexer /warehouse/gmall/ods/ods_log/dt=2020-06-14
感谢各位的阅读!关于“hive如何开启lzo压缩”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!