温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

hive如何开启lzo压缩

发布时间:2021-12-10 11:38:20 来源:亿速云 阅读:449 作者:小新 栏目:大数据

这篇文章给大家分享的是有关hive如何开启lzo压缩的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

hive开启lzo压缩

1.Hadoop安装lzo依赖并进行配置

涉及到jar包的编译以及core-site文件的配置

  • 可以在mapred-site文件中,设置是在map还是reduce端开启压缩。在这里只是设置mapreduce的压缩。hadoop和hive是可以单独设置的。

2. 在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;


3. 创建表指定InputFormat以及OutFormat

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是指写入数据到文件,输入数据的格式

4. 上传数据到表中

load data inpath '/origin_data/gmall/log/topic_log/2020-06-14' into table ods_log partition(dt='2020-06-14');

将数据导入到hive中后,数据会保存在lzo文件中

5. 为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压缩”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI