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. input[type=file]上传文件(格式判断、文件大小、上传成功后操作)

    var isUploadImg = false; //在input file内容改变的时候触发事件******************上传图片 $('#filed').change(function( ...

  2. <pre>标签的基本样式设置

    断行 在html中,换行符无法在一般标签内作为布局控制显示,包括xml实体 和 均表现为white-space,仅用于断字[1]. 一般情形下,可使用<br>标签断行:但需要从原始xml文 ...

  3. $Django 前后端之 跨域问题(同源策略) vue项目(axios跨域请求数据)

    1 跨域问题(多个域之间的数据访问) #同源策略(ip port 协议全部相同) #本站的只能请求本站域名的数据 #CORS实现(跨域资源共享) #实现CORS通信的关键是服务器.只要服务器实现了CO ...

  4. spark-streaming集成Kafka处理实时数据

    在这篇文章里,我们模拟了一个场景,实时分析订单数据,统计实时收益. 场景模拟 我试图覆盖工程上最为常用的一个场景: 1)首先,向Kafka里实时的写入订单数据,JSON格式,包含订单ID-订单类型-订 ...

  5. bootstrap 3列表单布局

    <form class="form-horizontal" role="form"> <fieldset> <legend> ...

  6. bsdiff的编译与使用

    bsdiff是一个差异包比较工具,可以用来实现增量更新. 下载地址:http://www.daemonology.net/bsdiff 编译 Mac环境 版本:macOS 10.12 1.解压下载的b ...

  7. JS如何截取一段字符中,某一个字符的前面和后面的字符

    比如这里的1992631934@qq.com如何获取到@前面的1992631934和@后面的qq.com js代码如下: var mail="1992631934@qq.com" ...

  8. idea 去除xml文件sql语句背景色

    怎么看idea mapper.xml中写sql语句的那种屎黄屎黄背景颜色不好看 去除背景色 把这两项勾选去掉,然后 把这个背景勾选也去掉,最后 把这个勾选也去掉 另一种方式: 也可以使用这种方式 al ...

  9. nikto for windows(web扫描工具) 使用教程

    本文出处: 欧普软件 ----------------------------------------------------------------------------------------- ...

  10. Function types cannot have argument labels 错误解决方案

    今天在封装网络工具类的时候 报错了 经过分析发现是在Swift3.0 把闭包的入参的参数名去掉就好了 正确写法 completion: @escaping (Any?, Bool)->() 错误 ...