目录

Kettle学习笔记(一)— 环境部署及运行

Kettle学习笔记(二)— 基本操作

kettle学习笔记(三)— 定时任务的脚本执行

Kettle学习笔记(四)— 总结

打开Kettle

打开时间略长,请耐心等待。

常用的控件说明

这里先对控件做下简单说明,方便后面使用。

通用控件

  • 通用——START:作业开始;

  • 通用——作业:指定某个作业循环执行;

  • 通用——转换:指定某个转换,加入到作业中来;

  • 通用——设置变量:设置变量,为了转换或者作业中获取变量;

  • 通用——成功:作业完成操作;

  • 通用——DUMMY:空操作,什么也不执行;

  • 邮件——发送邮件:给指定邮箱发送邮件,发件人的账号需要开通第三方发送邮件的功能;

  • 文件管理——复制/移动结果文件:复制/移动文件;

  • 文件管理——创建一个目录:创建指定的目录;

  • 文件管理——删除一个文件:删除指定的一个文件;

  • 文件管理——复制文件:复制指定的文件;

  • 文件管理——删除目录:删除指定的目录;

  • 文件管理——删除多个文件:通过正则表达式批量删除文件;

  • 条件——检查数据库连接:检查数据库是否能够连接通;

  • 条件——检查表是否存在:检查指定的表是否存在;

  • 文件传输——SFTP下载:可以通过SSH进行远程下载文件;

  • 文件传输——SFTP上传:可以通过SSH进行远程上传文件;

  • 文件传输——FTP删除:可以远程删除指定的文件;

转换中常用控件:

  • 输入——Excel输入:从excel文件中读取数据;

  • 输入——文本文件输入:从文本文件中读取数据;

  • 输入——生成随机数:用来生成指定类型的随机数;

  • 输入——自定义数据常量:将值不变的变量存入到此处,方便管理;

  • 输入——获取系统信息:可以获取系统信息(日期、命令行参数);

  • 输入——表输入:从数据库表中读取数据;

  • 输出——Excle输出:注意.xls格式输出行数有限制,一般输出.xlsx最好;

  • 输出——插入/更新:根据指定的匹配字段,可以检测是插入新数据,还是修改旧数据;

  • 输出——文本文件输出:将结果数据输出到文本文件中去;

  • 输出——表输出:将结果数据输出到某个数据库的某个表中;

  • 转换——增加常量:在原数据中将常量值增加新一列;

  • 转换——排序记录:对原数据按照某个字段进行排序;

  • 转换——剪切字符串:对字符串进行截图;

  • 转换——去重复记录:对于某个字段有重复的记录进行过滤;

  • 转换——字段选择:筛选流中的字段,慎用,过滤后后面的控件将无法获取流中筛除的字段了;

  • 流程——空操作:将不需要的数据放到此处,类似垃圾箱;

  • 流程——过滤记录:按照条件进行过滤,类似if-else;

  • 流程——Switch/Case:与java中switch/case一样;

  • 脚本——java代码:执行java代码;

  • 脚本——javascript代码:执行javascript代码;

  • 脚本——执行SQL脚本:执行sql;

  • 连接——记录集连接:类似于sql的left join/right join/inner join,但是使用前的数据必须要经过排序;

  • 作业——从结果获取记录:从作业中获取数据;

  • 作业——复制记录到结果:将转换中的结果数据放到作业中去;

  • 作业——获取变量:从作业中获取变量;

  • 作业——设置变量:设置变量,从而让作业中能够获取变量;

建立转换

文件—新建—转换。

新建转换后点击左边的主对象树,然后选择DB连接,建立用以连接数据库。如图所示:

建立数据库连接的过程相当于在数据库管理工具连接数据库。

输入所需同步的两个数据库,点击测试查看连接是否正常

注意:在数据库链接的过程中,可能会报某个数据库连接找不到的异常。那是因为你没有对应的数据库链接驱动,请下载对应驱动后,放入kettle的lib文件夹。

简单的数据同步/更新

新建表插入

在左边的菜单选择“核心对象”,在核心对象里面选择“输入—表输入”,用鼠标拖放到右边面板。

双击拖进来的表,可对表进行编辑。

新建插入\更新

在左边面板中选择核心对象、选择“输出->插入\更新”如图所示:

双击插入更新,编辑它选中表输入,按住shift键,拖向插入更新。

选中表输入,按住shift键,拖向插入更新。

双击插入更新,更改设置。

查询字段:用来对比的关键字段,kettle会根据它来判断是插入还是更新,一般用id

运行装换

点击运行按钮,测试装换是否成功。

启动完成。

使用作业控制转换

作业可以定时或周期性的执行转换,新建作业。并从左边面板拖入start 和转换。

双击start可以编辑,可以设置执行时间等等

点开装换,可以设置需要执行的转换任务,打开我们保存的转换。

将成功拖到右侧面板,并连接。

这样一个简单的通过作业调度的kettle就算做完了。

Kettle学习笔记(二)— 基本操作的更多相关文章

  1. Kettle学习笔记(四)— 总结

    目录 Kettle学习笔记(一)- 环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle中设置编码 ...

  2. Kettle学习笔记(一)— 环境部署及运行

    目录 Kettle学习笔记(一)-环境部署及运行 Kettle学习笔记(二)- 基本操作 kettle学习笔记(三)- 定时任务的脚本执行 Kettle学习笔记(四)- 总结 Kettle简介 Ket ...

  3. WPF的Binding学习笔记(二)

    原文: http://www.cnblogs.com/pasoraku/archive/2012/10/25/2738428.htmlWPF的Binding学习笔记(二) 上次学了点点Binding的 ...

  4. AJax 学习笔记二(onreadystatechange的作用)

    AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...

  5. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  6. JMX学习笔记(二)-Notification

    Notification通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知. 这里写 ...

  7. java之jvm学习笔记二(类装载器的体系结构)

    java的class只在需要的时候才内转载入内存,并由java虚拟机的执行引擎来执行,而执行引擎从总的来说主要的执行方式分为四种, 第一种,一次性解释代码,也就是当字节码转载到内存后,每次需要都会重新 ...

  8. Java IO学习笔记二

    Java IO学习笔记二 流的概念 在程序中所有的数据都是以流的方式进行传输或保存的,程序需要数据的时候要使用输入流读取数据,而当程序需要将一些数据保存起来的时候,就要使用输出流完成. 程序中的输入输 ...

  9. 《SQL必知必会》学习笔记二)

    <SQL必知必会>学习笔记(二) 咱们接着上一篇的内容继续.这一篇主要回顾子查询,联合查询,复制表这三类内容. 上一部分基本上都是简单的Select查询,即从单个数据库表中检索数据的单条语 ...

随机推荐

  1. C# 调用DOS 命令

    class NetWorkDeviceInfo { public static string GetDeviceInfo() { System.Diagnostics.Process p = new  ...

  2. C++智能指针的原理和实现

    一.智能指针起因 在C++中,动态内存的管理是由程序员自己申请和释放的,用一对运算符完成:new和delete. new:在动态内存中为对象分配一块空间并返回一个指向该对象的指针: delete:指向 ...

  3. 因为手机设置字体大小导致h5页面在webview中变形的BUG

    出现这个问题,有以下因素 你的页面采用了rem单位,并且是采用js动态计算html的font-size你的页面被加在了APP中的webview中这该死的手机被重设了字体大小解决方法一般,我们动态计算好 ...

  4. 新东方APP技术团队建设

    作者:张建鑫, 曾任IBM高级软件架构师, 滴滴高级技术专家, 现任新东方集团高级技术总监 2019年注定是不平凡的一年,在俞敏洪老师对科技条线的密切关注下, 吴强老师亲自操盘了对产品技术条线的改革, ...

  5. Matlab实现BP神经网络预测(附实例数据及代码)

    BP神经网络介绍 神经网络是机器学习中一种常见的数学模型,通过构建类似于大脑神经突触联接的结构,来进行信息处理.在应用神经网络的过程中,处理信息的单元一般分为三类:输入单元.输出单元和隐含单元. 顾名 ...

  6. 1day漏洞反推技巧实战(2)

    学习存货(2) CVE-2018-11784简单分析之反推的魅力 看着挺有趣的,简单分析下: 通过搜索tomcat漏洞找到: http://tomcat.apache.org/security-7.h ...

  7. 已知三角形ABC为锐角三角形,求 sinA + sinB·sin(C/2) 的最大值。

    已知三角形ABC为锐角三角形,求 sinA + sinBsin(C/2) 的最大值. 解:Δ := sinA + sinB·sin(C/2) = sin(B+C) + sinB·sin(C/2) = ...

  8. tomcat漏洞总结

    描述 Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache.Sun 和其他一些公司及个人共同开发而成.由 ...

  9. jq的slideToggle效果

    slideToggle() 方法通过使用滑动效果(高度变化)来切换元素的可见状态. 如果被选元素是可见的,则隐藏这些元素,如果被选元素是隐藏的,则显示这些元素. 例子:一个简单的下拉菜单效果----& ...

  10. [考试总结]noip模拟42

    开始给了一个简单的题目,但我还是没有珍惜. 一个简简单单的树形 \(dp\),然而因为取模却不知道该如何比较大小.. 其实可以取 \(log\),然后我就梦中惊坐起,然后想到了魔法少女lbw 淦 然后 ...