Kettle产品详细介绍
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2017-12-9 Kettle产品详细介绍
晴天云
目录
Kettle产品详细介绍 0
Kettle产品详细介绍 (2)
1.Kettle简介 (2)
2.Kettle 的安装 (2)
3.Kettle 的详细介绍 (3)
3.1Kettle 资源库管理 (3)
3.1.1新建资源库 (4)
3.1.1新建资源库 (4)
3.1.2更新资源库 (7)
3.1.3资源库登陆和用户管理 (8)
3.1.4资源库登录和没有资源库登录的区别 (9)
3.2菜单栏介绍 (11)
3.2.1文件 (11)
3.2.2 编辑 (14)
2.2.3 视图 (20)
2.2.4 资源库 (21)
3.2.5 转换 (23)
3.2.6 作业 (29)
3.2.7 向导 (32)
3.2.8 帮助 (34)
3.3工具栏介绍 (35)
3.3.1 transformation的工具栏 (35)
3.3.2 Jobs工具栏 (36)
3.4主对象树介绍 (37)
3.4.1Transformation的主对象树 (37)
3.4.2Jobs主对象树 (52)
3.5核心对象介绍 (59)
3.5.1Transformation核心对象 (59)
3.5.2Jobs核心对象 (220)
3.6 transformation功能 (281)
3.7 Jobs功能 (282)
4 Kettle 优点 (282)
5 Kettle 缺点 (282)
Kettle产品详细介绍
1.Kettle简介
简单地说,Kettle 就是国外一个开源的ETL工具。
其主要功能就是对源数据进行抽取、转换、装入和加载数据。
也就是将源数据整合为目标数据。
Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。
Spoon 是一个图形用户界面,它允许运行转换或者任务,其中转换是用pan工具来运行,任务是用Kitchen来运行。
Pan 是一个数据转换引擎,它可以执行很多功能。
例如从不同的数据源读取、操作和写入数据。
Kitchen 是一个可以运行利用xml或数据资源库描述的任务,通常任务是在规定的时间间隔内用批处理的模式自动运行。
Kettle主要包括以下三大块:
一、Spoon——转换/工作(transform/job)设计工具(GUI方式);
二、Kitchen——工作(job)执行器(命令行方式);
三、Span——转换(trasform)执行器(命令行方式)。
2.Kettle 的安装
首先,必须先安装Sun 公司的JAVA 运行环境1.4以上的版本(包括1.4),并配置好环境变量;
然后,将下载的Kettle软件解压到目标目录,就可以看到Kettle 的启动文件Kettle.exe或Spoon.bat;
最后,运行启动文件。
Windows 平台的启动:双击spoon.bat。
Linux 平台的启动:双击Spoon.sh。
3.Kettle 的详细介绍
3.1Kettle 资源库管理
登陆时可以选择”没有资源库”即可进入Kettle,此时所定义的转换和工作将只能存储在本地磁盘上,以.ktr文件和.kjb文件的方式。
若使用资源库登录,则所有定义的转换和工作将会存储到资源库里。
实际上,资源库就是一个数据库,比如SQL SERVER数据库,里面存储了Kettle定义的元素的相关元数据,简单而言,就是元数据库。
如果资源库创建完毕,则资源库的相关信息将存储在文件“reposityries.xml”中,它位于你的缺省home 目录的隐藏目录“.kettle”中。
如果是windows 系统,这个路径就是c:\Documents andSettings\<username>\.kettle。
3.1.1新建资源库
第一步:点击登录时弹出界面的中的“新建”按钮,即会弹出以下界面:
3.1.1新建资源库
第一步:点击登录时弹出界面的中的“新建”按钮,即会弹出以下界面:
第二步:再继续点击第一步中界面的“新建”按钮,即可弹出一下界面:
第二步:再继续点击第一步中界面的“新建”按钮,即可弹出一下界面:
第三步:填写完以上对话框后,点击“Test”按钮,如果出现下图中的提示的“正确连接到数据库”,及创建成功,然后点击“OK”即可进入下一步。
第四步:完善资源库信息后,点击“确定”即可完成资源库信息创建。
3.1.2更新资源库
创建了资源库后我们可以更新资源库,点击首页的“编辑”、“新建”按钮均可以进入到创建资源库界面。
当数据库连接选择后,就可以开始创建资源库了,单击“创建或更新”按钮可以创建新资源库或者更新原来已有的资源库,弹出:
选择“是”,弹出:
输入Admin用户的密码(资源库登陆和用户管理中描述),
确定,更新资源库的步骤类似创建资源库,不同的是它是创建索引。
3.1.3资源库登陆和用户管理
R_User 和R_Profile 两个表存储了资源库的用户信息,包括登录名、密码和用户权限。
展开两个表分别做以下说明:
R_Profile 表
它说明有3 种权限的用户:
1)Administrator 权限超级管理员,可以管理其它用户;
2)User 权限普通用户,可以使用所有工具;
3)Read-only只读用户,理解为只可读不可写,即可以使用工具,但是不能保存信息。
后面再进一步研究R_User 表:
LOGIN 是登录名,PASSWORD 是密码(注意密码是经过加密的,所以在此才会以16 进制显示,在这里我们不研究加密算法),ENABLED 表示用户是否可用,Y 是可用,N 是不可用,在工具里体现为:
我们从表中可以看出密码是经过加密的,由于我们不知道他的加密算法,我们不知道原密码。
但是我们想通过资源库登录Kettle,如果用admin(具有超级管理员权限)能登陆,则可以创建其它权限
的用户,从而不再需要这些初始化的用户信息。
3.1.4资源库登录和没有资源库登录的区别
使用资源库登录后在Kettle 中定义的转换和Job 均存储到资源库的相关表中,若没有资源库登录,则会以.ktr 和.kjb 格式存储在硬盘上。
此外两者登录后菜单栏显示的将不同,并且有些选项功能也不一样。
1)菜单栏显示不同
没有资源库:
有资源库:
2)文件菜单栏相关选项功能不同
●没有资源库:
“打开”、“从url 文件打开”均是打开硬盘目录下的.kjb 和.ktr 文件。
“保存”和“另存为”是把转换和工作以.ktr 和.kjb 文件存储到硬盘上。
●资源库登录:
“打开”是打开存储在资源库里的转换和工作。
“从url 文件打开”是打开硬盘目录下的.kjb 和.ktr 文件。
“保存”是把相关转换存储到资源库。
“另存为”是把转换和工作以.kjb 和.ktr 文件存储到硬盘上。
把本地的转换和工作存储到资源库只用先打开本地的转换和工作,点击保存即可以保存到资源库中。
第五步:填写登录密码后点击“确定”,即可进入主界面:
3.2菜单栏介绍
3.2.1文件
新建:新建包括新建转换和新建作业,如下图所示:
点击上图中的转换或作业,都可以弹出新建转换或新建作业的窗
口。
打开:打开已经存在的转换或作业。
●在连接资源后点击打开,是选择打开资源库中已经存在的对象。
例如:
●在不连接资源库的情况下点击打开时,是选择存放在硬盘上的转换或作业打开。
例如:
从URL打开文件:从URL地址打开已经存在硬盘上的转换或作业。
例如:
导出到XML 文件:将定义的转换和Job 导出到xml 文件:
从XML 文件导入:从导出的xml 文件中导入定义的转换或Jobs。
Export all linked resources to XML:导出所有相关的资源保存为.Zip 文件。
目前解压后再次导入时报错。
保存:保存当前的转换或作业(Jobs)。
另存为(VFS):VFS 的作用就是采用标准的Unix 系统调用读写位于不同物理介质上的不同文件系统。
关闭:关闭当前转换或当前作业。
打印:打印当前转换或当前作业。
退出:退出应用程序,即闭Kettle的运行程序。
3.2.2 编辑
●撤销:撤销前一步操作。
●搜索元数据:搜索当前转换或Jobs 的相关元数据,可以
过滤,可以查看所有,资源库实际上就是元数据库。
这个选项将在可用的字段、连接器、注释以及所有加载的任务和转换中搜索,并展示搜索的结果。
●设置环境变量:
添加设置环境变量的功能,使动态的测试转换变为可能。
通常变量被一个任务中不同的转换设置。
不管怎么样,在开发或者测试期间,你可能需要手动的设置变量。
可以通过“编辑/Set Environment variables”或者CTRL+J来使
用这个特性。
当运行一个未定义的变量时将出现这个窗口,可以在执行的时候去定义它。
变量最先的使用是设置环境变量。
例如很容易指定临时文件的位置,可以使用变量:
${java.io.tepdir},这个变量在/Unix/Linux/OSX 机器上的位置是:directory/tmp,在Windows 机器上的目录是:c: \Documents and Settings\<username>\Local Settings \ Temp。
●显示环境变量:见变量叙述。
●显示参数:
●清除选择:清除所选的转换或作业等的步骤,即取消选择
的步骤。
●选择所有的步骤:全选定义的转换或jobs 的所有步骤。
●复制所选的步骤到剪贴板:复制当前所选择的转换步骤到剪切板。
●从剪贴板复制步骤:相当于粘贴步骤。
●浏览数据库:单击浏览数据库,弹出选择对话框
选中一个连接,确定,查看数据库表和视图等。
数据库浏览器允许你浏览你连接的数据库。
在这个时候,它仅仅显示可用的表、目录或者表模式。
可以利用右边的按钮最低限度的展示表或者视图。
你可以选择下面的选项:
➢Preview first 100 rows of the table(显示表最开始的100行)➢Preview first … rows of the table(根据你输入的行数展示表)➢Number of rows of the table(显示表的行数)
➢Show layout out of the table(显示表结构)
➢Generate the DDL(生成该表的DDL语句)
➢Generate the DDL for another connection(在其它的数据库连接
中生成该表的DDL语句)
➢Open for SQLthe table(in SQL Editor)(在SQL编辑器中生成读取该表的SQL语法)
➢Truncate table (生成“Truncate table”的语句)
●一般项:
Kettle的一般属性配置选择,可以改变很多选项来增强图形用户界面的个性化。
●观感:
Kettle界面外观的设置,例如设置窗体字体大小、颜色以及背景颜色等等。
此选项在编辑—>选项—>观感中设置。
2.2.3 视图
工作区大小设定,如下图所示:
放大(I):放大工作区。
缩小(O):缩小工作区。
等比例(P):回到最开始的工作区。
2.2.4 资源库
●连接资源库:进入登录首页连接资源库。
输入资源库名称、登录的用户、密码等信息后,点击“确定”按钮进行登录,如果点击“取消”,则退出连接资源库界面;如果点击“没有资源库”,则自动进入没有连接资源库的界面。
●断开资源库连接:断开当前已经连接上的资源库。
●探索资源库:管理转换、工作、用户、档案等。
详情见资源库中Administrator 权限。
编辑当前用户:编辑密码和权限
3.2.5 转换
●运行:执行当前转换。
●预览:预览本次转换的结果。
●调试:和预览类似。
●重放:重新运行转换
●校验:检验转换的输出
●影响分析:分析转换的影响
●获取SQL:
●显示最近一次影响分析:
例如:
●显示最近一次影响结果:
例如:
●复制转换到剪贴板:将当前的转换复制到剪切板。
●从剪贴板粘贴转换:将复制到剪切板的转换粘贴到新的转换中。
如果在同一个开发界面,则需要关闭复制的那个转换,才能对其复制操作。
●复制转换图片到剪贴板:类似于将当前转换截图,可将其图保存到需要的地方。
●设置:设置转换的属性
3.2.6 作业
●运行:运行本作业。
●复制job到剪切板:将当前job复制到剪切板。
●从剪切板粘贴Paste job:将复制到剪切板的job粘贴到新的job 中。
●设置:设置JOB 的属性,“日志”可以存储日志信息到数据库表中。
3.2.7 向导
●创建数据库连接向导:
●复制表向导:
拷贝表向导:
3.2.8 帮助
●每天提示:
●显示欢迎屏幕:
●显示步骤的插件信息:
●显示作业项插件:
●关于:
3.3工具栏介绍
3.3.1 transformation的工具栏
Transformation的工具栏如下图所示:
功能对应菜单栏里的转换、文件、视图等。
●新建:新建转换、工作等。
●打开:打开转换或作业。
●保存当前转换或工作。
●以不同名字保存当前转换或工作,即另存为。
●运行当前工作或转换。
●暂停当前运行的工作或者转换。
●停止当前运行的工作或转换。
●预览这个转换。
●debug 这个转换。
●重放这个转换。
●校验这个转换。
●分析这个转换在数据库中的影响。
●获取SQL:产生需要运行这个转换的SQL。
●相当于编辑下的浏览数据库。
●隐藏、显示执行结果面板。
●相当与菜单栏里的视图,放大、缩小工作区。
3.3.2 Jobs工具栏
●新建:新建转换、工作等。
●打开:打开转换或作业。
●保存当前转换或工作。
●以不同名字保存当前转换或工作,即另存为。
●运行当前工作或转换。
●停止当前运行的工作或转换。
●获取SQL:产生需要运行这个转换的SQL。
●相当于编辑下的浏览数据库。
●隐藏、显示执行结果面板。
●相当与菜单栏里的视图,放大、缩小工作区。
3.4主对象树介绍
主对像树包括转换transformation和作业Jobs,如下图所示:
3.4.1Transformation的主对象树
3.4.1.1新建transformation
双击“转换”或右击“转换”再选择“新建”,都可以创建一个transformation。
创建后的转换transformation界面如下所示:
3.4.1.2 transformation设置
右键单击“设置…”属性:
单击“设置…”转换属性后界面如下图所示:
转换transformation的属性设置界面分别如下所示:●转换:
●paramenters:
●日志:
●日期:
●依赖:
●杂项:
●分区:
监控:
设置中各选项说明如下:
选项描述
转换名称转换的名称,如果你想保存到资
源库中,就需要指定一个名称。
描述转换的简短描述,将在资源库浏
览器中展示。
扩展描述转换的详细描述。
状态草稿或者产品状态
版本描述版本
目录你想保存转换到资源库的目录创建者(Created by)创建转换的用户名称
转换创建的时间
转换创建的时间(Last modified
at)
转换最后修改者的姓名(Last
转换最后修改的用户
modified by)
转换最后修改的时间
转换最后修改的时间(Last
modified at)
READ日志步骤将当前步骤读取行的编号写入日
志表。
READ含义:从源步骤读
取
INPUT日志步骤将当前步骤输入行的编号写入日
志表。
INPUT含义:从文件或者
数据库输入
WRITE日志步骤将当前步骤写入行的编号写入日
志表。
WRITE含义:写入到目标
步骤
OUTPUT日志步骤将当前步骤输出行的编号写入日
志表。
OUTPUT含义:输出到文
件或者数据库
UPDATE日志步骤将当前步骤更新行的编号写入日
志表。
UPDATE含义:在数据库
更新
日志数据库连接使用这个连接写到日志表
日志表指定日志表的名称
使用批处理-ID 如果想使用批处理-ID,选中此选
项
使用日志表来记录登录用CLOB字段在日志表中存储登
录文本
最大日期数据库连接通过这个连接获取日期范围
最大日期表通过这个表获取日期范围
最大日期字段通过这个字段获取日期范围
最大日期偏移用这个数量来增长日期
最大日期区别根据日期围范获取最大日期差异依赖这个表允许你输入所有的依赖记录集合里面的记录数这个选项允许你改变一个转换中
两个步骤缓冲区的尺寸打开日志视图:
打开历史视图:‘
3.4.1.3 DB 连接
右键“DB连接”属性
选择“新建”,或双击“DB连接”,都能弹出创建窗口:
Kettle支持多种Connection Type,现以oracle为例,创建DB连接,具体如下图所示:
3.4.1.4 Steps(步骤)
显示当前转换或者工作的所有步骤:
●Edit:编辑该步骤的属性。
●Duplicate:副本,复制步骤。
●删除:删除步骤。
●Share:共享步骤。
3.4.1.5 Hops(节点连接)
显示当前转换或工作的所有节点连接(即各步骤之间的数据连接,表示数据流向)。
一个连接连接两个步骤。
数据流的方向使用箭头来指定。
连接可以使它可用或者禁用。
●Edit:可以对改节点进行编辑操作。