KETTLE基本知识培训课件

上传人:我*** 文档编号:147879459 上传时间:2020-10-14 格式:PPT 页数:55 大小:2.23MB
返回 下载 相关 举报
KETTLE基本知识培训课件_第1页
第1页 / 共55页
KETTLE基本知识培训课件_第2页
第2页 / 共55页
KETTLE基本知识培训课件_第3页
第3页 / 共55页
KETTLE基本知识培训课件_第4页
第4页 / 共55页
KETTLE基本知识培训课件_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《KETTLE基本知识培训课件》由会员分享,可在线阅读,更多相关《KETTLE基本知识培训课件(55页珍藏版)》请在金锄头文库上搜索。

1、KETTLE基本知识讲义,2,内容,KETTLE介绍 KETTLE的要求环境(JDK版本)、安装、基本操作。 KETTLE的组件的类型基本说明(作业与转换) 案例 JAVASCRIPT的基本应用 KETTLE输出日志说明 启动脚本说明。,3,简介,Kettle是一款国外开源的etl工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。,4,ETL实现方式,手工编码,编写脚本,Java,Python 商业ETL 工具软件 Inform

2、atica IBM DataStage Microsoft SSIS Oracle ODI 开源ETL 工具软件 Kettle Talend CloverETL Ketl,Octopus ,5,Kettle 基本情况,源代码下载地址: svn:/source.pentaho.org/svnkettleroot/Kettle/trunk 官方文档: Bug报告地址: 官方论坛: http:/forums.pentaho.org/forumdisplay.php?f=135 中文论坛: 当前版本:Version 5.2 原作者: Matt License: 4.3 以前 LGPL ,4.3 以后改

3、为Apache 2,6,Kettle 历史,2006年 Kettle 2.2, Kettle 2.3 (Kettle 开源,License 为 LGPL) 2007年 Kettle 2.4, Kettle 2.5(被Pentaho 公司收购,更名为 PDI) 2008年 Kettle 3.0 ,Kettle 3.1 2009年 Kettle 3.2 (一个使用时间较长的稳定版本) 2010年 Kettle 4.0 ,Kettle 4.1 2011年 Kettle 4.2 2012年 Kettle 4.3 ,Kettle 4.4 (License 变更为 Apache 2,支持大数据) 2013

4、年 Kettle 5.0 2014年 Kettle 5.1、5.2,7,KETTLE 学习资料,1. 2. 3.Kettle Cook Book 4.Pentaho 3.2 Data Integration Beginners Guide5.Kettle Solution 6.Kettle 源代码,8,KETTLE的安装运行,KETTLE要求先安装JDK1.5版本或以上 下载地址:http:/sourceforge.jp/projects/sfnet_pentaho/releases/ 无需安装下载后直接运行spoon.bat即可,9,Kettle 资源库-元数据,元数据的通用概念: “描述性

5、数据”或“数据的数据” ETL 的元数据: 描述 ETL 要执行的任务 在Kettle里元数据的存储方式: 资源库 资源库包括文件资源库、数据库资源库 Kettle 4.0 以后资源库类型可以插件扩展 XML 文件 ktr 转换文件的XML的根节点必须是 kjb 作业XML的根节点是,10,KETTLE的组件的类型基本说明(作业与转换),Kettle中有两种脚本文件,transformation(转换,后缀为.ktr)和job(作业, 后缀为.kjb),transformation完成针对数据的基础转换,好比工厂里的生产流水线,每个组件相当于一个员工;job则完成整个工作流的控制,好比工厂里的

6、管理。 如果用记事本打开文件可发现转换和作业都是xml类型文件。,11,Kettle 的几个子程序,Spoon.bat: 图形界面方式启动作业和转换设计器。 Pan.bat: 命令行方式执行转换。 Kitchen.bat: 命令行方式执行作业。 Carte.bat: 启动web服务,用于 Kettle 的远程运行或集群运行。 Encr.bat: 密码加密,12,KETTLE的组件的类型基本说明(作业与转换),作业:分串行执行和并行执行,串行执行是先执行完其中一条线再执行另一条线,并行是两条线同时执行,同一条线上的两个步聚会先执行前面的再执行后面的,每个步骤执行结果分两种:true(成功)/fa

7、lse(失败),根据返回结果可以控制流程走向。,13,转换和作业,Kettle 的 Spoon 设计器用来设计转换(Transformation)和作业(Job)。 转换主要是针对数据的各种处理,一个转换里可以包含多个步骤(Step)。 作业是比转换更高一级的处理流程,一个作业里包括多个作业项(Job Entry),一个作业项代表了一项工作,转换也是一个作业项。 用户通过 Spoon 创建的转换、作业、数据库连接等可以保存在资源库和 XML 文件中。 转换文件以 ktr 为扩展名,作业文件以 kjb 为扩展名 资源库可以是各种常见的数据库。可以在 Spoon 中自动创建资源库,资源库默认用户名

8、和密码是admin/admin,14,KETTLE的组件的类型基本说明(作业与转换),作业流程图说明,15,KETTLE的组件的类型基本说明(作业与转换),转换:一开始所有步骤同时运行,记录会从最前端的步骤向后传递,传递到相应步骤则该记录被该步骤作相应处理,处理完成再把记录往后传递,记录传递分复制和分发两种模式。,16,KETTLE的组件的类型基本说明(作业与转换),复制:把一份数据复制成多份,后面步骤各占一份。 分发:把一份数据平均分配给后面步骤。,17,KETTLE的组件的类型基本说明(作业与转换),在转换组件上右键显示输入字段(显示输出字段)可以查看前面步骤流过来的记录字段情况和该字段是

9、后面步骤传递的字段信息情况。,18,基于表对表的同步,表对表同步是最基本的同步方式之一 实现步骤: 一、建立源库连接和目标库连接 二、使用表输入组件进行源表数据读取 三、对记录进行适配整理 四、使用表输出组件输出到目标表,19,基于表对表的同步,新建一个转换:文件新建转换,20,基于表对表的同步,21,基于表对表的同步,22,基于表对表的同步,23,基于表对表的同步,24,基于文件到表的同步,新建一个转换 流程:从文件读取记录插入到数据库中,25,基于文件到表的同步,26,基于文件到表的同步,27,基于文件到表的同步,28,基于表到文件的同步,新建一个转换 实现从表里读取记录生成文件,29,基

10、于表到文件的同步,30,基于表到文件的同步,31,基于表到文件的同步,32,JAVASCRIPT的基本应用,JAVASCRIPT基本语法: var jsStr = “hello kello”; /定义一个字符串变量 var javaStr = new java.lang.String(“java String ”); /java.lang.String实例 writeToLog(“m”, str); /打印字符串到日志输出 var num = 1; /定义一个整型 var arr = new Array(); /定义一个数组无任何元素 arr.push(“添加一个元素到数组未位”); var

11、arr1= new Array(3, “FTP补采”); /定义一个数组,33,JAVASCRIPT的基本应用,If else 语句 var bool = true; if(bool) /bool值为true Alert(“正确”); else /bool值为false Alert(“错误”); ,34,JAVASCRIPT的基本应用,for语句 var arr = new Array(1, “2”, “this is string”); for(var i=0; iarr.length; i+) if(arri = 2) Alert(“the value is ”+ arri); ,35,J

12、AVASCRIPT的基本应用,方法定义 var str = “whj”; /全局变量 function sayHello(name) /带一个参数的方法 if(name = null) return “hello “ + str; else return “hello “ + name; /返回一个字符串 writeToLog(“m”, sayHello();/方法调用,36,JAVASCRIPT的基本应用,异常处理 trycatch try var value = 100/0; catch(e) throw new java.lang.Exception(“除数不能为0:+ e); 异常处理

13、通常是防止未知错误产生所采取的处理措施。异常处理的好处是你不用再绞尽脑汁去考虑各种错误,这为处理某一类错误提供了一个很有效的方法,使编程效率大大提高。,37,JAVASCRIPT的基本应用,38,作业调用作业、转换,文件新建作业 作业可以调用作业,这样方便流程控制。,39,作业调用作业、转换,40,作业调用作业、转换,作业也可以调用转换,41,作业调用作业、转换,42,KETTLE自带例子,菜单:文件从URL打开文件samples 也可以直接到KETTLE工具下的samples目录打开,43,KETTLE输出日志说明,日志输出是检查程序运行情况的重要手段,也是程序维护必不可少的环节。 KETT

14、LE在日志输出方面也有很好的控制功能。KETTLE日志输出共分七个等级:没有日志(Nothing)、错误日志(Error)、最小日志(Minimal)、基本日志(Basic)、详细日志(Detailed)、调试日志(Debug)、行级日志(Rowlevel)。默认为基本日志。,44,KETTLE输出日志说明,Nothing:不显示任何输出 Error:仅仅显示错误信息 Minimal:使用最小的日志 Basic:缺省的日志级别 Detailed:给出日志输出的细节 Debug:调试目的,调试输出 Rowlevel:打印出每一行记录的信息,45,KETTLE输出日志说明,作业日志输出说明 作业运

15、行状态有两种:true(成功)/false(失败)。 注意:失败不代表运行异常、出错。有时只是用来控制流程的一种决策、一种手段。,46,KETTLE输出日志说明,程序异常退出情况,47,KETTLE输出日志说明,转换日志输出说明 I: 当前步骤生成的记录数(从表输入、文件读入) O:当前步骤输出的记录数(输出到文件、表) R:当前步骤从前一步聚读取的记录数 W:当前步骤向后面步骤抛出的记录数 U:当前步骤更新过的记录数 E:当前步骤处理出错的记录数,48,启动脚本说明,KETTLE程序启动分两种,一种是作业、一种是转换。 作业调用启动脚本: kitchen.sh( kitchen.bat) 转

16、换调用启动脚本: pan.sh( pan.bat),49,Kettle 运行方式 Pan命令行,参数名列表: /rep : 资源库名称 /user : 资源库用户名 /pass : 资源库密码 /trans : 要启动的转换名称 /dir : 目录(不要忘了前缀 /) /file : 要启动的文件名(转换文件) /level : 日志级别 (Error, Nothing, Minimal, Basic , Detailed, Debug, Rowlevel) /logfile : 要写入的日志文件 /listdir : 列出资源库里的目录 /listtrans : 列出指定目录下的转换 /listrep : 列出可用资源库 /exprep : 将资源库里的所有对象导出到 XML 文件中 /norep : 不要将日志写到资源库中 /safemode : 安全模式下运行: 有额外的检查 /version : 显示转换的版本,校订和创建日期 /param : 设置参数,参数格式=,例如-param:FOO=bar /listparam:

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号