Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。其中,Spoon是Kettle中的一个组件,其他组件有PAN,CHEF,Encr和KITCHEN等。

Spoon通过图形化的页面,方便直观的让你完成数据转换的操作。

1、安装配置

点我下载

最新版本是7.1,小编这里使用的是6.1。下载完毕后,解压即可。

因为是Java编写的,需要jdk环境。配置完环境后,运行Spoon.bat或spoon.sh,就可以看到Spoon的页面了。

Tips:进行操作前,别忘记将数据库驱动包放入Spoon的lib文件夹下。

这是不太方便的地方,Spoon支持的数据库类型特别多,如果把所有的数据库驱动都提前下载好,又有点多余了。

如果忘记这个步骤,在建立数据库连接时,会报错。

2、小试牛刀

首先先新建一个作业。
路径:文件–>新建作业。

2.1 新建连接

路径:主对象树-作业-作业1-DB连接。

填写相应的数据库信息,即可。

点击测试,连接成功。

2.2 新建转换——由DB到DB

需求:目前有两个数据库,DB1和DB2。将DB1中的某一个表中的数据,导入到DB2对应的表中。

为了演示方便,此处两个数据源的数据模型完全相同。但在实际操作中,两个数据源的模型会复杂很多。

路径:文件–>新建–>转换。

1)拖动控件
在左侧“核心对象”下的“输入”菜单中,找到“表输入”,并将其拖动到右侧的空白处。同理,将“输出”菜单中,找到“插入/更新”,拖至空白处。
2)编辑控件内容
“表输入”控件:

选择或新建数据库连接,对应需求中的DB1,将要查询的sql语句贴上。

“插入/更新”控件:

同理,选择或新建数据源,对应需求中的DB2;选择目标表;若有查询条件,添加查询字段。这里按id查询,若此id存在则更新,若不存在即插入。添加更新字段。

3)建立关联
选中“表输入”,按住shift,将关联线关联到“插入/更新”。

4)保存执行
执行前需将文件保存,点击启动按钮执行即可,如下图:

2.3 新建转换——由Excel到DB

需求:将Excel中的数据导入到DB中。
步骤与2.2类似,就不再详细描述了,只说下不同的地方。需要的两个控件为“Excel输入”、“表输出”。

Excel中最好以数据库字段名充当列名,示例如下:

“Excel输入”控件中需要选择表格类型,并添加Excel文件,如下图所示。

获取字段信息

保存执行即可。

2.4 作业调度

上面的两个例子简单介绍了“转换”的功能,如果需要定时或重复性的执行这些转换,那就需要作业调度来支持了。

路径:核心对象–>通用。

拖动控件“START”和“转换”。
编辑“START”控件,如下图:

编辑“转换”,选择文件,如下图:

3、小结

工欲善其事必先利其器,学会使用工具,使工作更加高效。

---------------------

本文来自 yysx 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/u010066934/article/details/77852368?utm_source=copy

Kettle Spoon入门教程的更多相关文章

  1. kettle的系列教程

    kettle--window开发环境和linux运行环境的迁移 kettle的输入输出组件和脚本组件 kettle--变量的使用 kettle的资源库 kettle的job kettle的hello ...

  2. 数据库数据格式化之Kettle Spoon

    前言 现在的数据库种类越来越多,数据库备份的格式也越来越复杂,所以数据格式化一直是一个老生常谈的问题.据库备份文件格式那么多,既有SQL的,也有BAK的,还有TXT的等.数据库种类也有很多,MySQL ...

  3. wepack+sass+vue 入门教程(三)

    十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...

  4. wepack+sass+vue 入门教程(二)

    六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...

  5. wepack+sass+vue 入门教程(一)

    一.安装node.js node.js是基础,必须先安装.而且最新版的node.js,已经集成了npm. 下载地址 node安装,一路按默认即可. 二.全局安装webpack npm install ...

  6. Content Security Policy 入门教程

    阮一峰文章:Content Security Policy 入门教程

  7. gulp详细入门教程

    本文链接:http://www.ydcss.com/archives/18 gulp详细入门教程 简介: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优 ...

  8. UE4新手引导入门教程

    请大家去这个地址下载:file:///D:/UE4%20Doc/虚幻4新手引导入门教程.pdf

  9. ABP(现代ASP.NET样板开发框架)系列之2、ABP入门教程

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之2.ABP入门教程 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...

随机推荐

  1. go学习笔记

    安装 brew install go 国际惯例hello,world. 创建文件hello.go go文件的main方法为函数的主入口,必须有这个方法. hello.go package main i ...

  2. 鼠标事件event和坐标

    鼠标事件(e=e||window.event) event.clientX.event.clientY 鼠标相对于浏览器窗口可视区域的X,Y坐标(窗口坐标),可视区域不包括工具栏和滚动条.IE事件和标 ...

  3. 两张图概括struts2执行流程核心(经典)

  4. Go语言环境安装&搭建(Linux)

    Linux的东西果然不记不行啊~ 下载&安装 下载 我们先找到linux版的下载链接 https://golang.org/dl/ 打开网址找到Linux对应的链接右键复制下载地址 然后连接服 ...

  5. 解决Javascript中$(window).resize()多次执行(转)

    https://www.cnblogs.com/shuilangyizu/p/6816756.html 有些时候,我们需要在浏览器窗口发生变化的时候,动态的执行一些操作,比如做自适应页面时的适配.这个 ...

  6. swift 实践- 07 -- UISwitch 开关

    import UIKit class ViewController: UIViewController { var uiswitch: UISwitch? override func viewDidL ...

  7. Confluence 6 修改站点的标识图片

    你可以通过修改标识图片(Logos)来修改你 Confluence 站点的外观和感觉. 你可以修改: 站点标识图片(site logo) 为所有空间修改默认空间标识图片(default space l ...

  8. 如何使用PowerShell批量删除Office 365的用户

    概述 本文将演示如何在必要的时候(例如在测试环境),通过PowerShell脚本批量删除Office 365的用户,首先需要通过Get-MsolUser的命令(并且配合筛选条件)获取到符合条件的用户列 ...

  9. medir设置

    setting中 MEDIA_URL="/media/"MEDIA_ROOT=os.path.join(BASE_DIR, "app01","medi ...

  10. go包之logrus显示日志文件与行号

    前言: logrus是go中比较好的一个log模块.github上的很多开源项目都在使用这个模块, 我在写这个博文时, github上的logrus的stars数已经有8214了.最近在用这个模块时, ...