Kettle下载安装使用
1. 下载
如果您是 Pentaho 的新手,您有时可能会看到或听到被称为“Kettle”的 Pentaho 数据集成。Pentaho Data Integration 最初是一个名为“Kettle”的开源项目。术语 KETTLE 是一个递归术语,代表 Kettle Extraction Transformation Transport Load Environment。Pentaho 收购 Kettle 后,更名为 Pentaho Data Integration。其他 PDI 组件(例如Spoon、Pan和Kitchen)的名称最初是为了支持 ETL 产品的“烹饪”隐喻。
——Pentaho帮助文档, Google翻译
Kettle是一款开源免费的ETL工具,ETL全称 Extract – Transform – Load 意味着数据抽取,转换,装载的过程。
ETL是将业务系统的数据经过抽取、清洗转换之后加载到数据仓库的过程,目的是将企业中的分散、零乱、标准不统一的数据整合到一起,为企业的决策提供分析依据, ETL是BI(商业智能)项目重要的一个环节。
——百度
1)kettle下载地址:
官网
2)再下个mysql驱动包:
下载地址
,打开地址选择Platform Independent,然后点击下载,有驱动包就不用下载了。
下载好后将文件解压,将里面的 mysql-connector-java-5.1.49-bin.jar 放到,kettle解压的lib下面( \data-integration\lib)。
3) 因为我需要用到db2,所以又下载了个
db2驱动包
,密码:188p,还是放在lib目录下,
把这两个都放在和刚才mysql驱动包同样的地方。(不用db2,只用mysql忽略此步,反正就是用什么数据库按什么驱动)
2. 解压
解压后,点开Spoon.bat启动
Spoon.bat:在Windows平台上运行spoon;
Spoon.sh:在Linux、AppleOSX、Solaris平台上运行Spoon。
3. Kettle使用,新建转换
对了,需要准备Java软件的运行环境,需要先安装JDK,jdk1.8版本就行,配置环境变量。学过Java的应该都有吧,不会有人没有吧。
PDI 客户端(也称为 Spoon)是一个桌面应用程序,使您能够构建转换以及安排和运行作业。
PDI 客户端的常见用途包括:
不同数据库和应用程序之间的数据迁移
充分利用云、集群和大规模并行处理环境将大量数据集加载到数据库中
数据清理步骤从非常简单到非常复杂的转换
数据集成,包括利用实时 ETL 作为 Pentaho Reporting 数据源的能力
内置支持缓慢变化的维度和代理键创建的数据仓库填充(如上所述)
下面要实现的就是将一个数据库表的数据,抽取转换装载到另一个数据库的表里。
两个数据库里的表内容是这样的。
1) 新建转换:可以直接Ctrl+N,也可以右键转换新建,双击转换也行。
新建后会出现下图所示的界面。保存一下,我起名叫demo.
2)表输入
选择表输入直接拖拽到右侧,或者双击都行。表输入这个在输入下面,不知道在哪,直接在上面搜索就行。
配置表输入
新建连接
防止乱码
2)插入更新
将输出里面的插入/更新拖进去,按shift连表输入到插入/更新
配置插入更新,新建了个数据库连接用来连接student表
3)运行
点击左上角那块运行,成功下面会有绿色的符号
结果是这样的,就是性别那部分想男为1,女为0,所以再加一步值映射
4)值映射在转换里,或者搜索一下拖拽进去,直接拽 到这两个中间。
配置一下,选择要映射的字段,编辑字段要映射成的值,然后运行一下,刷新下表就行了。
5)现在想将男女两部分分开,用过滤记录,将过滤记录拖入进去如下图所在位置。
过滤记录后面的对号和红色的× 不是正确或者错误的意思,是过滤完成的数据走对号,被过滤掉的走×。
过滤条件是sex = 1, 将为1的true数据发送给男,false错误的发送给女。
我新加了个插入更新,更名为男和女
运行一下。运行之前我将之前student表里的数据全部删除,又建了一个表用来放性别女的数据,原先的就用来放性别男的数据。
OK,过滤成功。