1、北京久其软件股份有限公司2009年2月6日久其通用数据管理平台ETL开源工具介绍北京久其软件股份有限公司2009年2月6日Kettle介绍Kettle介绍Kettle是一个开源的ETL工具,包括了4个部分。Chef 任务(job)设计工具(GUI方式)Kitchen 任务(job)执行器(命令行方式)Spoon 转换(transform)设计工具(GUI方式)Span 转换(transform)执行器(命令行方式)目前的版本已经看不到Chef的影子了,因为在Spoon里面包含了设计Job的功能。看来Kettle是将设计工具全部集成在了Spoon上面。而Spoon也包括了Job和Transfor
2、m的执行功能。北京久其软件股份有限公司2009年2月6日北京久其软件股份有限公司2009年2月6日使用前的准备工作运行环境:JDK 1.5或更高下载安装:可访问http:/kettle.pentaho.org去下载最新版本。运行程序:Spoon.bat运行Spoon程序,包括了转换和任务的设计和执行。Spoon.sh是Linux等平台的运行命令。资 料 库:存储定义的转换和任务的数据库连接。关于资料库Kettle存储转换和任务有两种方式,一是利用xml存储成文件,二是直接存储到数据库,也就是Kettle的资料库中。在启动Spoon后,首先会弹出资料库的选择界面,在这个界面中可以选择要使用的资料
3、库,也可以创建或修改资料库。当然也可以选择不使用资料库。选择了资料库后,转移和任务将会被存储到数据库中。如果选择不使用资料库,则需要通过文件的方式对转换和任务进行读取和保存。北京久其软件股份有限公司2009年2月6日北京久其软件股份有限公司2009年2月6日定义转换定义北京久其软件股份有限公司2009年2月6日1.Value:Value 是行的一部分,并且是包含以下类型的的数据:Strings、floating point Numbers、unlimited precision BigNumbers、Integers、Dates、或者Boolean。2.Row:一行包含0 个或者多个Value
4、s。3.Output Stream:一个Output Stream 是离开一个步骤时的行的堆栈。4.Input Stream:一个Input Stream 是进入一个步骤时的行的堆栈。5.Step:转换的一个步骤,可以是一个Stream或是其他元素。6.Hop:一个Hop 代表两个步骤之间的一个或者多个数据流。一个Hop 总是代表着一个步骤的输出流和一个步骤的输入流。7.Note:一个Note 是一个转换附加的文本注释信息。定义任务定义北京久其软件股份有限公司2009年2月6日1.Job Entry:一个Job Entry 是一个任务的一部分,它执行某些内容。2.Hop:一个Hop 代表两个步
5、骤之间的一个或者多个数据流。一个Hop 总是代表着两个Job Entry 之间的连接,并且能够被原始的JobEntry 设置,无条件执行下一个Job Entry,直到执行成功或者失败。3.Note:一个Note 是一个任务附加的文本注释信息。北京久其软件股份有限公司2009年2月6日数据库连接Kettle支持目前主流的大多数数据库。在程序中可能用到数据库连接的地方有资料库,以及转换的输入输出流。数据库连接Kettle支持对数据库连接的可视化操作,即为数据库浏览器,可以通过图形界面的方式浏览大多数异构数据源。北京久其软件股份有限公司2009年2月6日数据库连接Preview first 100
6、rows of table(显示表最开始的100行)Preview first rows of table(根据你输入的行数展示表)Number of rows of table(显示表的行数)Show layout of the table(显示表结构)Generate DDL(生成该表的DDL语句)Generate DDL for other connection(在其它的数据库连接中生成该表的DDL 语句)Open SQL for table(在SQL 编辑器中生成读取该表的SQL 语法)Truncate table table:(生成“Truncate table”的语句)北京久其软件
7、股份有限公司2009年2月6日数据库连接Kettle自带了一个SQL编辑器,用于对SQL语句的编辑,提供了语法变色功能。用于直接利用SQL语句修改数据库以及在转换中执行SQL语句提供编辑功能。北京久其软件股份有限公司2009年2月6日变量变量分为:环境变量Kettle变量变量的使用:$VARIABLE(UNIX)%VARIABLE%(WINDOWS)北京久其软件股份有限公司2009年2月6日转换在新建菜单中点击Transformation新建一个转换在设计面板上单击右键,选择Transformation Setting弹出转换选项通过拖拽的方式选择相应的Steps和Hops。按SHIFT建立连
8、接两个步骤的Hop。设计各个步骤及连接。点击面板上方的运行按钮可以运行该转换。点击面板上方的调试按钮可以对转换进行调试。点击验证按钮可以对转换进行验证。北京久其软件股份有限公司2009年2月6日北京久其软件股份有限公司2009年2月6日转换当某个Step连接了多个Hop的时候,会涉及到数据的分发和复制的概念。分发:即将数据按行分别根据连接的顺序发送到下一个Step中。复制:是将数据复制后同时发送到后续的Step中。由于后续的Step是由不同的线程完成的,所以到达最后步骤的行的顺序也可能不同。步骤-InputTableInput北京久其软件股份有限公司2009年2月6日步骤-InputText
9、file Input 文本输入北京久其软件股份有限公司2009年2月6日步骤-InputExcel输入Xml输入Xbase输入文件反序列化输入获取系统信息获取文件名北京久其软件股份有限公司2009年2月6日步骤-OutputTable Output 表输出北京久其软件股份有限公司2009年2月6日步骤-OutputText File Output 文本文件输出北京久其软件股份有限公司2009年2月6日步骤-OutputExcel 输出Xml输出序列化文件输出SQL文件输出删除插入/更新更新 属性文件输出.北京久其软件股份有限公司2009年2月6日步骤-LookupDatabase lookup
10、 数据库查询在数据库中查找值Stream lookup 流查询在不同源头中查找值,数据首先读入内存中。Call DB procedure 调用数据库存储过程 HTTP客户端 Web Service查询 Table exist 表是否存在 File exist 文件是否存在.北京久其软件股份有限公司2009年2月6日步骤-TransformSelect Values 选择值一般用于选择字段,重命名字段和指定字段的长度或精度Filter Rows 过滤记录Sort Rows 排序记录Add Sequence 增加序列Group By 分组Split Fields 字段分割Null If 设置空值C
11、alculator 计算器北京久其软件股份有限公司2009年2月6日Field1Field2Field3TargetABC1ABC2DEF3DEF4Field1Field2Field3Target1Target2ABC12DEF34步骤-TransformAdd Constants 增加常量增加常量到数据流中Row Normaliser 行转列Row Denormaliser 列转行Row Flattener 扁平化北京久其软件股份有限公司2009年2月6日步骤-TransformValue Mapper 值映射将指定的值映射为另一值Clone Rows 克隆行Dummy 空步骤什么也不做的步
12、骤Switch/Case 条件切换JavaScript 脚本北京久其软件股份有限公司2009年2月6日Job任务,控制整个流程,可以包括若干个转换,同时附加着其他的操作。北京久其软件股份有限公司2009年2月6日Job EntryStart 开始任务开始执行的起点。编辑该实体弹出编辑对话框,包括了对任务的时间调度选项。Dummy 空任务Abort Job 终止任务Job 任务中包含任务,子任务Transformation 转换,已经定义过的数据转换。北京久其软件股份有限公司2009年2月6日Job EntryShell使用Shell 任务条目在任务运行的主机上执行一段Shell 脚本。SQL
13、执行一段SQL脚本JavaScript 执行一段JavaScript脚本Mail 发送邮件FTP 从FTP服务器上获取文件XML 包括了XML验证等功能北京久其软件股份有限公司2009年2月6日Job EntryFile Management 文件管理使得任务可以对文件系统进行操作,具体的操作包括创建、删除文件,判断文件是否存在,移动、压缩、对比文件等。Condition 条件判断文件、数据表,字段是否存在。北京久其软件股份有限公司2009年2月6日CloverETL北京久其软件股份有限公司2009年2月6日CloverETL也是开源的ETL工具,不同的是,CloverETL仅仅是引擎部分开源,而设计ETL的GUI工具是商业化的,目前可以注册一个试用版来使用。CloverETL的设计工具名字叫CloverGUI,是以eclipse插件的形式提供的。要下载该工具访问http:/www.cloveretl.org/北京久其软件股份有限公司2009年2月6日
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。