Kettle使用
Kettle直接使用
- 公司给的压缩包,下载完成以后,使用.bat文件打开
- 大致界面
- 使用Open files找到自己的文件打开
- 直接开始,找到需要打开的步骤(一个一个点进去找的)
- 使用鼠标右键,选择Open Referenced Object , 选择右侧的Job
- 进入指定内容例,继续前面步骤
- 继续往里查找
- 这里面就是所要操作的流程
- 进入操作内部
- 此处为该步骤的流程
- 点击文本输入查看需要引入的文本内容,此处为所要传输的文件格式
- 这里为所要传输的表字段
- Java代码区域,可以写逻辑进行操作
- 结束一般为存入指定数据库
- 点击查看存入哪个指定的数据库
- 如果出现异常,也会存入指定的异常数据库
- 前往系统跑批,在堡垒机里面查看执行的详细过程
Kettle复杂使用
Kettle使用java程序
-
kettle运行java程序时,需要一些jar包,jar包需要放在这个lib包里
-
kettle也可以直接执行调用写的程序及方法
-
比如说我想调用我自己的
RedisUtils.refRedisHashcode()
方法 -
在idea中找到代码所在位置,点击小圆圈定位到所在包目录
-
先使用maven的clean,在使用install构建,得到jar包,放到lib目录里面
-
捏造一个java代码
-
调用自定义的方法
-
引入官方jar包以后,也可以使用常用语句
Kettle连接Mysql数据库
- 找到目录下面的jdbc.properties文件
- 配置自己的数据库连接
- 配置数据库连接及需要的环境变量
- 这里提示缺少环境变量
job_tablename
- 在idea找到该变量
- 找到具体的变量配置
- 配置对应的变量
Kettle本地使用
- Kettle流程详情
- 点击文本输入,在文件处设置本地文件的地址
- 在内容处配置文件列格式,我这里是
|+|
- 这是我的文件,列与列之间使用
|+|
分割
- 设置对应字段,kettle读取字段时,是顺序读取列
- 设置无误后,可以点击下面的预览记录
Excel使用
- 复制表头
- 粘贴,选择转置。能把行转换成列
- 选择想要对比的另一字段
- 选中,点击重复项
- 选择对比区域
- 左右两列有相同项,即会高亮
Kettle修改模块的名称
- 想修改这个模块名称,直接修改报错
- 点击编辑步骤
- 修改表中对应文件的名称
- 在侧边栏修改
- 保存,修改完成
Kettle传递参数
- 由于数据库使用了分区,查找时需要传递分区,提高查找效率
SELECT
PARTITION_NAME partitioinBactName
FROM
information_schema.PARTITIONS
WHERE table_schema=schema() and TABLE_NAME = 'ori_bact'
- 查找ori_bact表的所有分区,并存储为参数partitioinBactName
- 传递参数partitioinBactName
- 外部设置以后,内部也需要设置传递参数partitioinBactName
- 使用参数
Kettle并行执行转换
Kettle表输入对应多个输出
-
一个表输入对应多个输出时,会提示,分发到输出或者复制到输出
-
分发 横线为分发,两个输出平分输入
-
复制 复制为复制横线。两个输出都会获取到表输入的所有内容