Kettle5.3.0连接Apache hadoop2.2.0方法及问题解决

Kettle连接hadoop

修改Kettle插件配置目录下的plugin.properties文件(个人电脑中完整路径为E:\Pentaho\data-integration\plugins\pentaho-big-data-plugin\plugin.properties)如图1

图1

把该文件中的原active.hadoop.configuration=hadoop-20(大概位于文件第五行)修改为active.hadoop.configuration=hdp21, 如图2。


图2

其中hdp21这个字符串是对应E:\Pentaho\data-integration\plugins\pentaho-big-data-plugin\hadoop-configurations文件夹中的hdp21文件夹名称。该文件夹包含了所用到的插件jar包,必须对应才可以,若是其他版本的hadoop,可以尝试修改成其他插件的文件夹名称,对应关系如图3。


图3

设置好后保存重新启动Kettle即可连接到hadoop,否则提示无法连接到hadoop。


Kettle上传中文文件到hadoop系统出现乱码

我现在遇到的情况是这样子的:上传的文件中包含有中文汉字,通过Kettle的转换后输出到安装有hadoop的CentOS6.5系统中,其中CentOS6.5的语言环境是英文的(en_US.UTF-8)。虽然可以正常上传,但是用命令hdfs dfs –catxxxx 查看上传的文件时发现中文部分出现乱码。

解决办法,修改系统的语言环境,vim /etc/sysconfig/i18n,把文件中的LANG= en_US.UTF-8修改为LANG=zh_CN.UTF-8,然后重新启动CentOS系统。

虽然这样子解决了上传中文文件乱码的问题,但是又会引发新的问题。该问题具体描述如下:(CentOS语言环境为中文zh_CN.UTF-8)比如上传的文件叫aaa.txt,该文件中包含有中文,上传到hadoop的hdfs中后,无法查看该文件!但是该文件确实是真实存在的,只是跟不存在一样,用hdfs dfs –get aaa.txt  ~/命令复制到当时用户目录下,打开的文件居然为空的!目前该问题暂时无法从根源上进行解决,折中的方法是,上传的文件都把.txt这些类似的后缀名去掉,这样复制出来的打开才正常,下载的时候再把对应的文件名后缀加上。



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值