0003-如何在CDH中使用LZO压缩
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
1.问题描述
CDH中默认不支持Lzo压缩编码,需要下载额外的Parcel包,才能让Hadoop相关组件如HDFS,Hive,Spark支持Lzo编码。
具体请参考:
https://www.cloudera.com/documentation/enterprise/latest/topics/cm_mc_gpl_extras.html
https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_install_gpl_extras.html#xd_583c10bfdbd326ba-3ca24a24-13d80143249--7ec6
首先我在没做额外配置的情况下,生成Lzo文件并读取。我们在Hive中创建两张表,test_table和test_table2,test_table是文本文件的表,test_table2是Lzo压缩编码的表。如下:
通过beeline访问Hive并执行上面命令:
查询test_table中的数据:
将test_table中的数据插入到test_table2,并设置输出文件为lzo压缩:
在Hive中执行报错如下:
通过Yarn的8088可以发现是因为找不到Lzo压缩编码:
2.解决办法
通过Cloudera Manager的Parcel页面配置Lzo的Parcel包地址:
注意:如果集群无法访问公网,需要提前下载好Parcel包并发布到httpd
下载->分配->激活
配置HDFS的压缩编码加入Lzo:
保存更改,部署客户端配置,重启整个集群。
等待重启成功:
再次插入数据到test_table2,设置为Lzo编码格式:
插入成功:
2.1 Hive验证
首先确认test_table2中的文件为Lzo格式:
在Hive的beeline中进行测试:
Hive基于Lzo压缩文件运行正常。
2.2 Spark SQL验证
SparkSQL基于Lzo压缩文件运行正常。
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
HBase技术与应用实践 | HBase2.0重新定义小对象实时存取
本次分享来自中国HBase技术社区第七届MeetUp成都站,分享嘉宾天引 阿里巴巴 技术专家专注在大数据领域,拥有多年分布式、高并发、大规模系统的研发与实践经验,先后参与HBase、Phoenix、Lindorm等产品的内核引擎研发,目前负责阿里上万节点的HBase As a Service的发展与落地。 分享主题:HBase2.0重新定义小对象实时存取 内容概要:小对象,特别指1K~10MB范围的数据,比如图片,短视频,文档等广泛的存在于人工智能,医疗,教育,生活分享,电子商务等领域。HBase2.0在MOB技术的加持下重新定义小对象实时存取,具有低延迟,读写强一致,检索能力强,水平易扩展等关键能力。本文介绍了MOB特性的原理与实现,以及与经典对象存储相比,MOB带来的差异性与优势。 下载链接:http://hbase.group
-
下一篇
0004-Hive表字段Comment中文乱码
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 1.问题描述 默认Hive中创建有中文注释的表时,无论是在Hive CLI还是Hue中该注释显示都会是乱码。如使用以下建表语句: create external table test_table ( s1 string comment 'abc', s2 string comment '你好啊' ) row format delimited fields terminated by '#' stored as textfile location '/lilei/test_table'; 在Hive CLI中查看如下: Hue中显示一样,这里省略。 2.解决办法 这个问题是因为mysql中的元数据库表COLUMNS_V2中的字段COMMENT编码问题导致的,需要设置为utf-8,如下所示: 在mysql中设置该字段的编码为utf-8,如下所示: mysql –u root –puse metastore;alter table COLUMNS\_V2 modify column COMMENT varchar(256) ch...
相关文章
文章评论
共有0条评论来说两句吧...























微信收款码
支付宝收款码