Kettle系列教程-第十章:对接大数据平台
本系列教程基于Kettle 8.1(pdi-ce-8.1.0.0-365)。大部分内容同样适用于Kettle 7.x版本。
章节目录:
- 一、运行环境配置
- JDK
- JVM参数
- KETTLE_HOME
- 依赖包导入
- 二、转换与作业
- 转换流程
- 作业流程
- 三、数据库连接配置
- 创建数据库连接
- 共享数据库连接
- 数据库连接参数
- 四、资源库(数据库存储方式)
- 创建资源库
- 保存流程到资源库
- 从资源库打开流程
- 五、变量/参数
- 参数的配置与使用
- 变量的配置与使用
- 六、转换流程-输入组件
- Excel输入
- 表输入
- 七、转换流程-输出组件
- Excel输出
- 文本文件输出
- 表输出
- 八、转换流程-转换组件
- 九、脚本组件
- 转换-Java代码组件
- 作业-SQL组件
- 作业Shell组件
- 十、对接大数据平台
- 基础文件配置
- 上传文件到HDFS
- 连接Hive
- 十一、使用Windows计划任务定时执行Kettle作业
- 命令说明
- 编写批处理脚本执行Kettle作业
- 创建计划任务定时执行Kettle作业
- 十二、使用Java执行Kettle作业
- 搭建Kettle运行环境
- 代码示例(作业、转换、资源库)
本章说明
Kettle是一个很强大的ETL工具,除了与传统关系型数据库对接,还可与Hadoop平台分布式存储库对接。可能你已经注意到,不管是作业还是转换,都有一个【Big Data】分组,分组下的各个组件都是与Hadoop平台做对接的。Kettle可与多种大数据平台做对接,比如CDH、HDP等。
基础文件配置
在使用【Big Data】插件之前,需要先进行一些配置。以CDH为例,首先需要准备下面这些集群配置文件:
然后将这些配置文件覆盖到data-integration\plugins\pentaho-big-data-plugin\hadoop-configurations\cdh513\
目录下:
再然后,配置一下本机的hosts文件,因为这些配置文件使用的都是hostname,不是ip地址。当然你也可以手动把这些配置文件中的hostname全部修改为ip地址:
上面这些配置完成后,重新打开Spoon,点击左上角工具栏 -> 工具 -> Hadoop Distribution
弹出集群类型选择窗口,我们上一步配置的是CDH,所以这里选择【Cloudera CDH】,然后点击【OK】即可。
上传文件到HDFS
经过上面一小节的配置后,就可以上传文件到HDFS上了。这里使用的是作业中【Big Data】分组下的【Hadoop Copy Files】组件:
配置组件,【Source Environment】选择Local
;【源文件/目录】用于指定要上传的文件位置,如果直接指定到了具体文件名,就只上传该文件,如果这里填写的是一个目录,则可以通过【通配符】去过滤要上传的文件;【Destination Environment】选择<Static>
;【目标文件/目录】,填写HDFS上目标位置,特别要注意下图蓝底文字部分,一定要与集群配置文件core-site.xml
文件中fs.defaultFS
属性保持一致:
【设置】标签页,可以配置一些其他选项,根据需要配置即可:
配置完成后,保存,运行,查看结果:
连接Hive
可以把Hive当成普通的数据库去使用,比如执行DDL语句,查询语句,可以在【表输入】组件使用,但是不能在【表输出】组件中使用。
配置数据库连接如下,连接类型选择【Hadoop Hive 2】,主机地址为集群中HiveServer2服务所在主机,端口号为HiveServer2服务的运行端口。如果Hive开启了身份验证LDAP,则需要配置用户名和密码,否则不需要配置:
测试数据库连接:
本章完!
下一章:使用Windows计划任务定时执行Kettle作业