各个版本kettle下载地址
https://mirrors.bit.edu.cn/pentaho/Data%20Integration/
etl介绍
kettle介绍
kettle快速入门案例
txt文件转成成excle文件
**
文本文件输入的设置**
在文件中,点击浏览,选择好文件点击增加
在内容中,因为txt文本有逗号 所以修改分隔符为, 编码方式改为utf-8
在字段中点击获取字段,然后可以点击预览记录查看有哪些数据
excel文件输出的设置
最后,点击启动转换完成可以查看到
将上图excel文件的数据内容整入到Mysql数据库中去
准备工作,没有驱动就进去
excel输入的设置
表输出的设置
最后执行任务可以查看到
共享数据库连接
设置db连接,也能点击右键选择停止共享
设置mysql输入和mysql输出组件
设置mysql输入
mysql输出组件
最后启动可以看到t_user中的数据迁移到了t_user1中去了
设置mysql输入和插入更新组件
问题:以上图mysql输入和mysql输出为例,在修改了t_user的内容后,再次点击执行kettle任务,可以发现出现如下图数据的问题,数据又重新添加了一遍,这个时候就需要使用插入更新组件来完成这个操作了
那现在怎么解决呢?如下图
1.表输入的设置
2、插入更新的设置
删除组件
删除组件的设置
排序
表输入的设置
排序记录的设置
excel输出的设置
switch/case组件
表输入的设置
switch/case的配置
excel设置
其他两个表都一样。
没数据?忘记获取字段了
还是没数据?gender的字段属性设置成double了,将之前switch/case中的gender改成1.0 2.0 即可输出数据,
但是正常设计gender肯定是设置成字符或者字符串的
设置sql脚本组件
设置kettle转换参数
双击空白的地方的有个转换属性
如下图,设置明明参数
启动
JOB(作业)开发
设置转换
设置start
除非点击stop否则不会结束
**kettle的linux系统部署-使用Pan来执行转换任务
安装unzip解压命令:yum install -y unzip zip
解压: unzip zipped_file.zip
./pan.sh -file 测试.ktr -level Basic -param:input=/source/ceshi -param:output=/source/ceshi
内存不足的问题!!!
https://blog.csdn.net/noob9527/article/details/89493557?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.highlightwordscore&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-1.highlightwordscore
free -m 查看内存大小
** ./pan.sh -file /source/ceshi/测试.ktr -level Basic -param:input=/source/ceshi/sys_user_202112260753.txt -param:output=/source/ceshi/outuser**
kettle的linux系统部署-使用Kettle的Linux部署
ktr文件的配置
正常来说${input},下图不应该有字段,但是这是先在本地测试的时候添加上去的
还是在本地测试好的配置,表输出就不用改
双击空白处
配置作业kjb:
./kitchen.sh -file /source/ceshi/zuoye/hello.kjb -level Basic -param:input=/source/ceshi/zuoye/outuse.xls
问题
使用ssh登陆,启动服务,终端连接断开后(关闭xshell窗口或CRT窗口等),服务就停止了!!!
解决方案
思路:启动服务的命令后面补 (空格 &或者使用nohup命令) 后台运行;