Kettle⼯具的安装和部署、⼊门
k ettle介绍
kettle是⼀个开源的ETL⼯具,纯java代码编写,可以在Windows、linux、unix系统上运⾏mysql下载下来没安装包
绿⾊⽆需安装,⾼效的完成数据抽取转换加载。
1、kettle存储⽅式
xml形式存储
以资源库⽅式存储(数据库资源库、⽂件资源库)
2、kettle设计
转换:tranform,完全针对数据的基础进⾏转换
作业:job:整个⼯作流的控制
区别:
作业是步骤流,转换是数据流,这就是job和tranform最⼤的区别
作业的每个步骤,必须等到前⾯的步骤执⾏完毕,后⾯的步骤才会执⾏,⽽转换会⼀次性把所有
控件先启动(⼀个控件对应⼀个线程)
3、kettle组成
3.1 spoon.bat/spoon.sh 勺⼦:⼀个图形化界⾯,可以让我们⽤图形化的⽅式开发tranform和job
3.2 pan.abt/pan.sh 煎锅: 利⽤pan来调⽤tranform
3.3 kitchen.bat/kitchen.sh 厨房: 利⽤kitchen命令来调⽤job
3.4 Carte.bat/Carte.sh : 菜单: 轻量级的web服务器,⽤于建⽴远程的ETL服务器
kettle安装部署
1、现在⽹上下载好安装包
2、直接解压,运⾏Spoon.bat就可以启动了
在此之前需要配置jdk环境变量
到此kettle⼯具就安装好了
⼊门案例 - kettle实现单表数据迁移
1、连接数据库驱动
在运⾏之前,我们需要下载对应数据库的jar包导⼊到Kettle的lib⽬录下,⽐如我们需要把oracle迁移到mysql,那就需要oracle和mysql两个jar包,我⽤的是这⾥两个:
2、配置kettle转换
双击打开spoon.bat,在左侧主对象菜单栏,新建⼀个转换,命名为abcd,如下图:
3、配置oracle和mysql连接
在DB连接⼀栏,右击新建连接,配置数据库连接
注意主机名称尽量不要填localhost
点击测试,显⽰成功即为配置完成
4、配置迁移步骤
在左侧菜单栏【转换】⾥⾯,选择【核⼼对象】,选中输⼊下将【表输⼊】拖拽到右侧空⽩区域。
双击你拖进来的表输⼊,修改“步骤名称”,选择源数据,点击获取【获取SQL查询语句】,选择你想同步的表,点击确定后就可以了。当然也可以⾃⼰写sql语句,点击获取SQL查询语句选择⼀张你要迁移的表数据
点击预览可以查看要迁移的数据。
接下来配置表输出,在左侧菜单栏【转换】⾥⾯,选择【核⼼对象】,选中将【表输出】拖拽到右侧空⽩区域。
双击表输出,配置要迁移的⽬标表,我这⾥两边数据库字段⼀样,故⽽可以不⽤修改,如图:
接下来配置字段选择,在左侧菜单栏【转换】⾥⾯,选择【核⼼对象】,选中将【字段选择】拖拽到右侧空⽩区域。双击字段选择,选择列映射,匹配源字段和⽬标字段是否⼀致,不⼀致的原因可能是字段类型不⼀。
点击Add,然后点击确定
ctrl+s保存⽂件,到这⾥⼀个简单的转换就配置完成了。
5、开始迁移数据
⼿动运⾏,点击下图圈圈⾥⾯的按钮
点击启动,⽇志级别这⾥可以选择错误⽇志,这样只记录错误信息
转换输出栏如下图:
最后检测两边表,如记录数count(*)、表中数据对⽐等没问题的话表⽰转换完成。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论