一 。Kettle Spoon简介

ETL(Extract-Transform-Load的缩写,即数据抽取、转换、装载的过程),对于企业或行业应用来说,我们经常会遇到各种数据的处理,转换,迁移,了解并掌握一种etl工具的使用,必不可少,支持图形化的GUI设计界面,然后可以以工作流的形式流转,在做一些简单或复杂的数据抽取、质量检测、数据清洗、数据转换、数据过滤等方面有着比较稳定的表现,使用它减少了非常多的研发工作量,提高了我们的工作效率。

Kettle中有两种脚本文件,transformation(转换ktr结尾)和job(任务kjb结尾),transformation完成针对数据的基础转换,job则完成整个工作流的控制(工作流程首先由个开始节点【可以设置定时执行】 可以选择transformation)。

官网 :http://kettle.pentaho.org/ 
下载的最新版本的kettle是:pdi-ce-7.1.0.0-12

官方入门文档 :https://wiki.pentaho.com/display/EAI/Getting+Started

二。kettle Spoon 安装入门

1》 安装kettle spoon

kettle是使用java编写 直接是绿色版 解压即可使用 解压后的目录结构

lib目录 可以存放第三方的jar  比如 数据库的驱动包 将来如果要连接某个数据库 将驱动包置入这个lib目录即可
spoon.bat是可执行文件 启动之前确保 jdk安装 环境变量(PATH和JAVA_HOME) 可以直接输入java和javaw 

主对象树就两种类型脚本 转换和作业

2》kettle spoon操作和核心对象介绍

》》转换

转换菜单点击右键 新建 就创建了一个ktr结尾的转换脚本 
  
   新建好转换脚本后 主窗口的转换1 打开时 就可以拖拽控件到主窗口了 如果想重新再新建一个转换需要切换到欢迎页签
核心对象就是可以拖拽的控件 这里主要介绍几个核心对象 
比如 我想转换一个 csv文件到excel文件

  • 输入 (CSV文件)

核心对象中有各种不同的输入源 比如表(数据库) csv ldap access等
     比如 任意位置新建一个csv文件添加两列数据
    

在转换脚本上拖拽一个csv输入的核心对象  选择该文件 并且指定两个列名和表格列名一致

  • 输出  (EXCEL文件)

核心对象中 将数据转换后写入的目的地 比如插入和更新(目的表存在更新不存在插入) 删除(输入存在的记录就删除目标表对应记录)

添加一个excel输出
  

数据excel输出 设置 选择输出的文件保存位置

  • Hops节点连接 (输入和输出连一条线)

数据从哪里流到哪里 可以再源对象上 shift键 鼠标拖动 也可以在主对象树中 Hops(节点连接) 上双击 手工选定
  

最后点击 三角运行按钮 运行 发现保存的excel中存在文件了

》》作业

作业可以理解为一套流程 流程从开始节点开始执行 直到最后
模拟一个简单作业 就是让上面那个转换每5s中执行一次 
定义一个开始节点

拖一个转换指定到开始那个aa的转换  shift 拉动线条

点击运行 发现每5s执行一次转换程序 如果需要停止 点击停止按钮即可

3》数据库转换案例

比如要实现将数据库testkettle的userinfo表的数据导入到userinfo1 同时还要导出到excel文件中
 userinfo表结构如下

userinfo1的表结构如下(注意两张表的字段不一样哦)

首先双击转换 新建一个转换  转换中配置数据库连接 先将驱动包 丢到kettle的lib目录下

输入完成后 点击测试按钮测试一下 
拖拽一个 输入 (表输入)到界面上  选择数据源的表 或者自己编写sql语句

添加一个excel输出 选择excel输出的位置 即可 拉上节点连接
添加一个 插入/更新 (选择插入的目标表【字段对应】 更新是用目标表的哪个字段和输入数据源的哪个字段比)
   如果userinfo1不在同一个数据库中 数据库连接选择其他数据库连接(自己新建) 即可

完成后 拖拽一根节点连接到  会有个确认框

点击运行发现excel和userinfo1都存在数据

ETL工具-Kettle Spoon教程相关推荐

  1. ETL工具kettle spoon使用说明

    实验一:表到表的数据转换 实验目的: 将SQLServer数据库中user表的数据传输到Oracle数据库中TABLE_USER表中,当发现重复数据时,先删除旧数据,再插入新数据.传输过程中无任何数据 ...

  2. 开源ETL工具kettle系列

    开源ETL工具kettle系列之常见问题 摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. J ...

  3. 开源ETL工具kettle系列之常见问题

    摘要:本文主要介绍使用kettle设计一些ETL任务时一些常见问题,这些问题大部分都不在官方FAQ上,你可以在kettle的论坛上找到一些问题的答案 1. Join 我得到A 数据流(不管是基于文件或 ...

  4. 四十二、ETL工具Kettle的转换步骤

    1. ETL工具Kettle的转换步骤 1.1 Kettle转换步骤的具体内容: 字符串处理 字符串的拆分 字符串的替换 行列变换 其他转换步骤 闭合距离 XSL转换 数值范围 2 字符串的处理 2. ...

  5. 四十一、ETL工具kettle输出步骤

    1. ETL工具Kettle的输出步骤 Kettle输入步骤主要分为以下几类: 数据库输出 表输出 更新.删除.插入和更新 文件输出 文本文件输出 XML输出 Excel文件输出 其他 报表和应用 2 ...

  6. ETL工具KETTLE常用设计之——作业设计思路模板

    目录 01:检查数据库连接: 02:设置环境变量: 03:设计各自数据流程转换: 04:邮件通知: ETL工具KETTLE用来设计数据流程,无论什么逻辑的数据流程,一般都有一个通用的设计模板流程,在这 ...

  7. 免费开源ETL工具KETTLE

    1.ETL概念 ETL:Extract-Transform-Load的缩写,即数据抽取.转换.装载的过程.ETL一词较常用在数据仓库,但其对象并不限于数据仓库. ETL是构建数据仓库的重要一环,用户从 ...

  8. ETL工具Kettle使用

    1.下载kettle:https://sourceforge.net/projects/pentaho/files/Data%20Integration/7.0/pdi-ce-7.0.0.0-25.z ...

  9. 三十九、ETL工具Kettle基础使用

    1. Kettle工具介绍 Kettle是一款国外开源的ETL工具,纯Java编写,开业在Windows.Linux.Unix上运行,可以高效稳定的完成数据抽取. Kettle中文名叫水壶,该项目的主 ...

  10. ETL工具Kettle简介和安装配置基本使用

    什么是Kettle Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定. Kettle 中文名称叫水壶,该项目的主程 ...

最新文章

  1. Cisco路由器故障诊断技术
  2. vue vue-cli3 修改elementui的date-picker源码 引入node_modules里的element-ui后报错exports is not defined...
  3. Android项目工程中的Gradle、compileSdkVersion、buildToolsVersion
  4. cas 登录之后不跳转_图解JWT如何用于单点登录
  5. 微软:“不好意思,我们还不够Cool,不能运行”
  6. Qt文档阅读笔记-Qt Core的官方解析
  7. springboot整合jwt_Spring Boot整合JWT实现用户认证(附源码)
  8. 用域控制禁止本地存盘禁止使用移动磁盘以防止图纸泄密的解决方案
  9. java体系的中间件适用于go吗_golang gf框架自定义中间件实现管理界面授权
  10. Java中List.forEach()方法使用
  11. MapReduce 初学总结
  12. 一起谈.NET技术,巨大转变!ASP.NET MVC2调用AJAX新特征
  13. Office 2016专业增强版加装Visio
  14. 好看的php表格样式,3款精美的css3 table表格样式设计
  15. DSP重新上电程序不能运行
  16. html5华文行楷字体代码,html5 支持的字体样式
  17. 金蝶盘点机PDA轻松扫码生产领料,生产型企业进销存条码管理软件
  18. 小程序input绑定输入保存数据
  19. 纹理特征提取(envi+python)
  20. SEO独家揭秘:影响网站降权被K的七项因素

热门文章

  1. 想撤回没门!电脑版微信、QQ 、TIM的防撤回工具
  2. 华罗庚的《统筹方法》
  3. Linux下ELF二进制文件加壳,pe/elf 文件加壳时的处理
  4. 怎么把度分秒化成小数_角度的度分秒与小数点格式互相转换
  5. java开发微信支付接口_JAVA微信支付接口开发——支付
  6. 计算机408考研笔记汇总
  7. 15个开发者最亲睐的Andr​​oid代码编辑器
  8. 机顶盒怎样配置服务器信息,网络机顶盒桌面配置服务器
  9. 莫烦 Python 基础
  10. B站莫烦Python基础学习笔记