【Kettle】Kettle入门解析(二)
时间:2020-10-20 21:24:27
收藏:0
阅读:50
【Kettle】Kettle入门解析(二)
(图片来源于网络,侵删)
Kettle实战1(将Hive表的数据输出到Hdfs)
【1】环境准备
1)进入Kettle的plugins\pentaho-big-data-plugin
目录,编辑plugin.properties
文件
根据自己的hadoop版本添加不同的类型,我的是cdh的,所以添加cdh514
有哪些版本可以在该目录下查看plugins\pentaho-big-data-plugin\hadoop-configurations
2)修改完成后进入自己对应的版本,我的是cdh514,所以进入plugins\pentaho-big-data-plugin\hadoop-configurations\cdh514
目录
将集群的Hadoop、Hive配置复制到该目录中
分别是core-site.xml
、hdfs-site.xml
、mapred-site.xml
、yarn-site.xml
、hive-site.xml
3)然后启动Kettle!!!
注意: 如果在连接Hive的时候报错Error connecting to database: (using class org.apache.hive.jdbc.HiveDriver) Illegal Hadoop Version: Unknown (expected A.B.* format)
,就将自己hadoop对应版本的hadoop-common.jar(我的是hadoop-common-2.6.0-cdh5.14.0.jar
)放到根目录的 lib
目录下,然后重启Kettle即可!
【2】在Hive中创建库表
前提:开启HDFS、Yarn、HiveMetaStore、HiveServer2
1)创建Kettle库
create database kettle;
use kettle;
- 1
- 2
2)创建Emp、Dept表
CREATE TABLE dept(deptno int, dname string,loc string)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘\t‘;
- 1
- 2
- 3
CREATE TABLE emp(
empno int,
ename string,
job string,
mgr int,
hiredate string,
sal double,
comm int,
deptno int)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ‘\t‘;
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
3)插入数据
insert into dept values
(10,‘accounting‘,‘NEW YORK‘),
(20,‘RESEARCH‘,‘DALLAS‘),
(30,‘SALES‘,‘CHICAGO‘),
(40,‘OPERATIONS‘,‘BOSTON‘);
- 1
- 2
- 3
- 4
- 5
insert into emp values
(7369,‘SMITH‘,‘CLERK‘,7902,‘1980-12-17‘,800,NULL,20),
(7499,‘ALLEN‘,‘SALESMAN‘,7698,‘1980-12-17‘,1600,300,30),
(7521,‘WARD‘,‘SALESMAN‘,7698,‘1980-12-17‘,1250,500,30),
(7566,‘JONES‘,‘MANAGER‘,7839,‘1980-12-17‘,2975,NULL,20);
- 1
- 2
- 3
- 4
- 5
4)Kettle实战
注意,虽然这里报了错,但是HDFS上已经生成了该文件,需要把HDFS上的空文件删除
重新执行之后结果如下??
Kettle实战2(将Json数据选取指定列输出到Hdfs)
查看结果??
都看到这里了,点赞评论一下吧!!!
原文:https://www.cnblogs.com/Main8/p/13847812.html
评论(0)