kettle使用教程(超详细)

今天详细详细说一下kettle 的安装,安装的版本:

jdk:jdk-8u152-windows--x64

kettle:KETTLE-5.4

一、环境部署

1、安装JDK,按默认值安装即可

2、设置环境变量,如图下图

  1. 具体步骤:

  2. 1.右击我的电脑-属性-高级系统设置-环境变量-系统变量-新建

  3. 2.变量名:JAVA_HOME

  4. 3.变量值: JDK安装目录

3、 Kettle程序打开(无需安装),如下图:

二、资源库

1、连接开发方案,选择资源库方式,如图

2、录入资源库信息, 如下图:

 
  1. 数据库:

  2. 主机名称:

  3. 数据库名称:

  4. 端口号:

  5. 账号:

  6. 密码:

3、选择并登录资源库,如下图:

账号: 

密码:

 三、资源管理

1、文件夹建立

 2、配置数据库连接(数据源/数据仓库)

四、方案开发

1、新建转换,更改转换名称,选择转换归属

2、建立表输入

 
  1. 步骤:

  2. 1在组件组-输入中找到组件-表输入

  3. 2.选择数据库连接(数据源)

  4. 3.填写SQL语句,可预览结果

3、建立表输出

 
  1. 步骤:

  2. 1、在组件组-输出中找到组件-表输出

  3. 2.建立表输入和表输出的连接

  4. 3.选择数据库连接(数据仓库)

  5. 4.录入目标表名,指定数据库字段

  6. 5.获取字段

  7. 6.执行SQL(建表)

4、建立清理SQL

 
  1. *步骤:

  2. 1在组件组-脚本中找到组件-执行SQL脚本

  3. 2.选择数据库连接(数据仓库)#此处选择必须谨慎,避免清理了数据源的数据

  4. 3.填写SQL语句

  5. 4.建立与表输入的关系

5、测试转换是否能正常工作

6、新建作业,更改作业名称,选择作业归属

7、添加组件

 
  1. *步骤:

  2. 1在组件组-通用中找到组件-START(作业开始,用于作业调度设置)

  3. 2.在组件组-通用中找到组件-转换(如有多个可以多次添加)

  4. 3.通过引用指定转换文件

  5. 4.在组件组-通用中找到组件-成功(作业结束)

  6. 5.按执行顺序建立组件间的关系

8、作业定时调度及测试,

         这样就算你可以入门了,我相信在不断的探索中你会有更多的心得的。在此也要提醒一点,KETTLE的性能可能会有不稳定的情况出现,所以注意保存你已经做过的东西。

更新:

很早之前写的文章,发现大家许多人想要下载安装包,我就给大家把链接顺便也找到了

jdk下载地址:

https://www.oracle.com/cn/java/technologies/javase/javase-jdk8-downloads.html

Kettle下载地址:

Pentaho from Hitachi Vantara - Browse /Data Integration at SourceForge.net

以为这就完了,no,再附加个人网盘地址:

kettle下载链接:

链接:https://pan.baidu.com/s/1tmFK1sdU7DDTT3YzoJVnwQ 
提取码:76yw 

点击下方链接,输入上方提取码即可
链接:https://pan.baidu.com/s/1tmFK1sdU7DDTT3YzoJVnwQ 

升级版本:

      最近由于需要连接clickhouse数据库,kettle目前的版本没有clickhouse驱动,所以没法连接,需要自定义插件,又重新安装了kettle的9.2版本尝试一下,应该是比较新的了所以就把资源也更新一下,希望对你有帮助的小伙伴可以点赞支持。

由于kettle的连接中暂时没有clickhouse插件,需要自己搞定,先看下官网提示:

Creating Database Plugins - Hitachi Vantara Lumada and Pentaho Documentation

查找相关资料在githubs上找到源码,连接如下:

GitHub - aaa8210/kettle2clickhouse: kettle connect clickhouse plug

上面是自己查找的一些资料,下面分享安装包及插件:

kettle的9.2版本:

百度云链接如下(包含kettle安装包、连接mysql驱动和clickhouse插件):

百度网盘 请输入提取码

提取码:4sy0 

链接:https://pan.baidu.com/s/1CH5wYQjAxnuvOz-C0koO2w 
提取码:4sy0 
注:连接clickhouse版本kettle版本需要对应.

1、下载分享资源

2、解压 kettle 安装包后将驱动包里的 clickhouse-plugins文件夹复制到 kettle 的 data-integration\plugins文件夹里

看一下clickhouse-plugins 里就是自定义的插件jar包

 

 3、复制驱动中的其余jar包

粘贴到 kettle 的 data-integration\libswt\win64 目录下(根据自己的系统而定,我的是win64) 

 

4、启动kettle,选择新建连接就可以选择Clickhouse了 目前感觉使用还不错,虽然kettle自带调度任务,但是前提是保持kettle打开,并且作业和转换在运行状态,这个不太适用与远程服务器安装windows客户端,或者一些学习的同学可以在本地windows设置调度任务也可以,在linux上安装部署kettle并调度是一个比较合适的方法。

参考如下步骤:

运用crontab执行kettle程序

1.建立目录存放kettle文件
# mkdir /data/kettle/kettle_job // 存放作业文件
# mkdir /data/kettle/kettle_transition // 存放转换
# mkdir /data/kettle/kettle_sh // 存放执行脚本
# mkdir /data/kettle/kettle_log // 存放执行kettle产生的日志文件
将从windows上配置好的.ktr和.kjb程序分别放在transition目录和job目录下
(或linux下编写后直接保存到该目录下),注意:job中的转换对应的目录需要做相应修改

2:编写执行脚本
# cd /data/kettle/kettle_sh
# vi ceshi.sh
文本内容如下:
#!/bin/bash
#执行job程序
cd /data/kettle/data-integration
export JAVA_HOME=/usr/local/jdk1.8.0_201/
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

./kitchen.sh -file=/data/kettle/kettle_job/testjob.kjb >>/data/kettle/kettle_log/ceshi_$(date +%Y%m%d).log

注:(因为crond是个守护进程,它不归属于任何用户,虽然之前以root用户配置了java环境变量,
但是crond一样找不到java命令,所以,当crond执行kettle任务时,
需要动态设置java环境变量,否则会出现手动执行.sh没问题,放crontb里面执行后无效果)
保存ceshi.sh,执行赋予执行权限的命令
# chmod +x ceshi.sh
测试ceshi.sh是否可以正常执行
# sh -x ceshi.sh

3:设定crontab 定时执行任务
# crontab -e
*/1 * * * * /data/kettle/kettle_sh/ceshi.sh //每分钟执行一次ceshi.sh
# systemctl restart crond
# systemctl enable crond

注意:
在linux中,如果是通过图形界面执行程序的话,点击那个绿色的三角即可。
如果是命令行启动,后台执行进行进程不能中断。
因此,在linux中不推荐使用kettle里面的自动执行,使用操作系统的定时执行要稳定的多。
Windows下使用定时任务计划,linux下使用crontab。

/usr/share/java /data/java/jdk1.8.0_141/bin/java

这个版本使用还不错,这样做完调度在之后就可以了。 

  • 26
    点赞
  • 288
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kettle工具使用 培训教程 目录 ETL 简介 KETTLE 简介 KETTLE 安装和运行 KETTLE 菜单简介 KETTLE 案例讲解 控件介绍 日志介绍 一、ETL 简介 ETL 概念简介 ETL相关的质量特性 ETL 在数据仓库项目中的位置 二、kettle 工具简介 Kettle是一款国外开源的ETL工具, 纯java编写,可以在Window、 Linux、Unix上运行,数据抽取高效 稳定 Kettle中有两种脚本文件, transformation(转换)和job (作业),transformation完成 针对数据的基础转换,job则完 成整个工作流的控制。 Kettle 工具的模型架构 kettle 工具的优缺点 优点: 系统开源、免费 安装方便、图形化安装 支持多种数据源 支持多种字符集 具有简单的权限管理 支持各种复杂数据转换 缺点 稳定性差 性能差 缺乏元数据管理 KETTLE 的下载 Kettle可以在 http://kettle.pentaho.org/网站下载 下载kettle压缩包,因kettle为绿色软 件,解压缩到任意本地路径即可 Kettle 运行步骤 双击运行 kettle 文件夹下的 Kettle 文件,出 现 kettle 欢迎界面。 创建资料库(可省略) 创建数据库连接 创建转换 创建Jobs,进行流程化控制 KETTLE 的使用 进入到Kettle目录,如果Kettle部署在windows环 境下,双击运行spoon.bat文件,出现如下界面: Kettle 使用步骤 (1)创建转换 大概的来说一般由三步组成: 输入+转换等中间步骤+输出 (2)创建作业 将已经创建好的转换和相关的作业组件串联起来, 形成一个整体的任务。 Kettle 的执行顺序 作业:分串行执行和并行执行,串行执行是先执行完其中一条线再执 行另一条线,并行是两条线同时执行,同一条线上的两个步聚会先执 行前面的再执行后面的。每个步骤执行结果分两种:true(成 功)/false(失败),根据返回结果可以控制流程走向。 转换:一开始所有步骤同时运行,记录会从最前端的步骤向后传递, 传递到相应步骤则该记录被该步骤作相应处理,处理完成再把记录往 后传递,记录传递分复制和分发两种模式。 KETTLE 的目录介绍 根目录文件夹介绍: 【Docs】存放Kettle各种语言版本的API文档。 【 Launcher 】存放Kettle Spoon加载的一些配置信息。 【 Lib 】存放Kettle所使用到的第三方jar包。比如:数据库驱动包, 如缺少时需要把对应的数据库驱动包放入此文件夹中。 【 Libswt 】存放Kettle对应不同平台的相关UI jar包。 【 Plugins 】存放Kettle自定义插件时,需要把自定义好的插件打成 jar放在此目录。 【 Pwd 】存放Kettle配置集群时所需要的配置文件与加密文件。 【 Samples 】存放Kettle自带的一些Job与Trans实例。 【 Simple-jndi 】存放Kettle使用JNDI方式连接数据源方式的文件 存放目录。目录下的jdbc.properties配置文件中有相应的实例提供 参考。 【 Ui 】存放Kettle初始化使用到的图片及配置信息。 Kettle 菜单介绍-transformation Main Tree菜单列出的是一个 transformation中基本的属性, 可以通过各个节点来查看。 DB连接:显示当前transformation 中的数据库连接,每一个 transformation的数据库连接都需要 单独配置。 Steps:一个transformation中应用 到的环节列表 Hops:一个transformation中应用 到的节点连接列表 转换的菜单介绍: Kettle 菜单介绍-transformation Core Objects菜单列出的是 transformation中可以调用 的环节列表,可以通过鼠标 拖动的方式对环节进行添加。 Input:输入环节 Output:输出环节 Lookup:查询环节 Transform:转化环节 Joins:连接环节 Scripting:脚本环节 转换的菜单介绍: Kettle 菜单介绍-transformation 每一个环节可以通过鼠标拖动来将环节添加到主窗 口中。 并可通过shift+鼠标拖动,实现环节之间的连接。 Kettle 菜单介绍-transformation 转换的常用环节介绍: Kettle 菜单介绍-job Main Tree菜单列出的是一 个Job中基本的属性,可以 通过各个节点来查看。 DB连接:显示当前Job中的数据 库连接,每一个Job的数据库连接 都
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值