一.kettle与hahoop环境整合
1、确保Hadoop的环境变量设置好HADOOP_USER_NAME为root
export HADOOP_USER_NAME=root
2、从hadoop下载核心配置文件
/export/servers/hadoop-2.7.7/etc/hadoop/hdfs-site.xml
/export/servers/hadoop-2.7.7/etc/hadoop/core-site.xml
3、把hadoop核心配置文件(hdfs-site.xml和core-site.xml)放入kettle目录
data-integration\plugins\pentaho-big-data-plugin\hadoop-configurations\hdp26
这里有许多文件夹,不知道怎么配在哪
因为我的hadoop是2.7.7所以我要选择hdp26
选择HortonWorks HDP 2.6.x,然后点击ok
4、修改data-integration\plugins\pentaho-big-data-plugin\plugin.properties文件
5、 创建Hadoop clusters
Hadoop环境准备
1、查看hadoop的文件系统
通过浏览器访问
http://hadoop102:50070
通过终端访问
hadoop fs -ls / # 查看文件
2、在hadoop文件系统中创建/hadoop/test目录
hadoop fs -mkdir -p /hadoop/test
3、在本地创建1.txt
vim 1.txt
id,name
1,xiaoxin
2,weibo
4、上传1.txt到hadoop文件系统的/hadoop/test目录
hadoop fs -put 1.txt /hadoop/test
Hadoop file input组件
Kettle在Big data分类中提供了一个Hadoop file input 组件用来从hdfs文件系统中读取数据。
需求:
从Hadoop文件系统读取/hadoop/test/1.txt文件,把数据输入到Excel中。
2、配置Hadoop File Input组件
指定hdfs的目标路径:
指定文件内容格式:
配置excel输出组件:
执行结果
Hadoop file output组件
需求:
- 读取 user.json 把数据写入到hdfs文件系统的的/hadoop/test/2.txt中。
实现步骤:
1、拖入以下组件
2、配置 JSON 输入组件
如果权限报错
# 修改权限
hadoop fs -chmod -R 777 /