KETTLE基本知识培训_第1页
KETTLE基本知识培训_第2页
KETTLE基本知识培训_第3页
KETTLE基本知识培训_第4页
KETTLE基本知识培训_第5页
已阅读5页,还剩50页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

KETTLE基本知识讲义1精品课件内容KETTLE介绍KETTLE的要求环境(JDK版本)、安装、基本操作。KETTLE的组件的类型基本说明(作业与转换)案例JAVASCRIPT的基本应用KETTLE输出日志说明启动脚本说明。2精品课件简介Kettle是一款国外开源的etl工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。3精品课件ETL实现方式手工编码,编写脚本,Java,Python商业ETL工具软件InformaticaIBMDataStageMicrosoftSSISOracleODI开源ETL工具软件KettleTalendCloverETLKetl,Octopus…4精品课件Kettle基本情况源代码下载地址:svn:///svnkettleroot/Kettle/trunk官方文档:Bug报告地址:/browse/PDI官方论坛:/forumdisplay.php?f=135中文论坛:当前版本:Version5.2原作者:MattLicense:4.3以前LGPL,4.3以后改为Apache25精品课件Kettle历史2006年Kettle2.2,Kettle2.3(Kettle开源,License为LGPL)2007年Kettle2.4,Kettle2.5(被Pentaho公司收购,更名为PDI)2008年Kettle3.0,Kettle3.12009年Kettle3.2(一个使用时间较长的稳定版本)2010年Kettle4.0,Kettle4.12011年Kettle4.22012年Kettle4.3,Kettle4.4(License变更为Apache2,支持大数据)2013年Kettle5.02014年Kettle5.1、5.26精品课件KETTLE学习资料1./、/2.3.《KettleCookBook》4.《Pentaho3.2DataIntegrationBeginner’sGuide》5.《KettleSolution》6.Kettle源代码7精品课件KETTLE的安装运行KETTLE要求先安装JDK1.5版本或以上下载地址:http://sourceforge.jp/projects/sfnet_pentaho/releases/无需安装下载后直接运行spoon.bat即可8精品课件Kettle资源库–-元数据元数据的通用概念:“描述性数据”或“数据的数据”ETL的元数据:

描述ETL要执行的任务在Kettle里元数据的存储方式:资源库资源库包括文件资源库、数据库资源库Kettle4.0以后资源库类型可以插件扩展XML文件ktr转换文件的XML的根节点必须是<transformation>kjb作业XML的根节点是<job>9精品课件KETTLE的组件的类型基本说明(作业与转换)Kettle中有两种脚本文件,transformation(转换,后缀为.ktr)和job(作业,后缀为.kjb),transformation完成针对数据的基础转换,好比工厂里的生产流水线,每个组件相当于一个员工;job则完成整个工作流的控制,好比工厂里的管理。如果用记事本打开文件可发现转换和作业都是xml类型文件。10精品课件Kettle的几个子程序Spoon.bat:图形界面方式启动作业和转换设计器。Pan.bat:命令行方式执行转换。Kitchen.bat:命令行方式执行作业。Carte.bat:启动web服务,用于Kettle的远程运行或集群运行。Encr.bat:密码加密11精品课件KETTLE的组件的类型基本说明(作业与转换)作业:分串行执行和并行执行,串行执行是先执行完其中一条线再执行另一条线,并行是两条线同时执行,同一条线上的两个步聚会先执行前面的再执行后面的,每个步骤执行结果分两种:true(成功)/false(失败),根据返回结果可以控制流程走向。12精品课件转换和作业Kettle的Spoon设计器用来设计转换(Transformation)和作业(Job)。转换主要是针对数据的各种处理,一个转换里可以包含多个步骤(Step)。作业是比转换更高一级的处理流程,一个作业里包括多个作业项(JobEntry),一个作业项代表了一项工作,转换也是一个作业项。用户通过Spoon创建的转换、作业、数据库连接等可以保存在资源库和XML文件中。转换文件以ktr为扩展名,作业文件以kjb为扩展名资源库可以是各种常见的数据库。可以在Spoon中自动创建资源库,资源库默认用户名和密码是admin/admin13精品课件KETTLE的组件的类型基本说明(作业与转换)作业流程图说明14精品课件KETTLE的组件的类型基本说明(作业与转换)转换:一开始所有步骤同时运行,记录会从最前端的步骤向后传递,传递到相应步骤则该记录被该步骤作相应处理,处理完成再把记录往后传递,记录传递分复制和分发两种模式。15精品课件KETTLE的组件的类型基本说明(作业与转换)复制:把一份数据复制成多份,后面步骤各占一份。分发:把一份数据平均分配给后面步骤。16精品课件KETTLE的组件的类型基本说明(作业与转换)在转换组件上右键->显示输入字段(显示输出字段)可以查看前面步骤流过来的记录字段情况和该字段是后面步骤传递的字段信息情况。17精品课件基于表对表的同步表对表同步是最基本的同步方式之一实现步骤:一、建立源库连接和目标库连接二、使用表输入组件进行源表数据读取三、对记录进行适配整理四、使用表输出组件输出到目标表18精品课件基于表对表的同步新建一个转换:文件->新建->转换19精品课件基于表对表的同步20精品课件基于表对表的同步21精品课件基于表对表的同步22精品课件基于表对表的同步23精品课件基于文件到表的同步新建一个转换流程:从文件读取记录插入到数据库中24精品课件基于文件到表的同步25精品课件基于文件到表的同步26精品课件基于文件到表的同步27精品课件基于表到文件的同步新建一个转换实现从表里读取记录生成文件28精品课件基于表到文件的同步29精品课件基于表到文件的同步30精品课件基于表到文件的同步31精品课件JAVASCRIPT的基本应用JAVASCRIPT基本语法:varjsStr=“hellokello”;//定义一个字符串变量varjavaStr=newjava.lang.String(“javaString”);//java.lang.String实例writeToLog(“m”,str);//打印字符串到日志输出varnum=1;//定义一个整型vararr=newArray();//定义一个数组无任何元素arr.push(“添加一个元素到数组未位”);vararr1=newArray(3,“FTP补采”);//定义一个数组

32精品课件JAVASCRIPT的基本应用If…else语句varbool=true;if(bool){//bool值为trueAlert(“正确”);}else{//bool值为falseAlert(“错误”);}33精品课件JAVASCRIPT的基本应用

for语句vararr=newArray(1,“2”,“thisisstring”);for(vari=0;i<arr.length;i++){if(arr[i]==2){Alert(“thevalueis”+arr[i]);}}34精品课件JAVASCRIPT的基本应用方法定义varstr=“whj”;//全局变量functionsayHello(name){

//带一个参数的方法if(name==null)return“hello“+str;elsereturn“hello“+name;//返回一个字符串}writeToLog(“m”,sayHello());//方法调用35精品课件JAVASCRIPT的基本应用异常处理try…catch…try{varvalue=100/0;}catch(e){thrownewjava.lang.Exception(“除数不能为0:"+e);}异常处理通常是防止未知错误产生所采取的处理措施。异常处理的好处是你不用再绞尽脑汁去考虑各种错误,这为处理某一类错误提供了一个很有效的方法,使编程效率大大提高。36精品课件JAVASCRIPT的基本应用37精品课件作业调用作业、转换文件->新建->作业作业可以调用作业,这样方便流程控制。38精品课件作业调用作业、转换39精品课件作业调用作业、转换作业也可以调用转换40精品课件作业调用作业、转换41精品课件KETTLE自带例子菜单:文件->从URL打开文件->samples也可以直接到KETTLE工具下的samples目录打开42精品课件KETTLE输出日志说明日志输出是检查程序运行情况的重要手段,也是程序维护必不可少的环节。KETTLE在日志输出方面也有很好的控制功能。KETTLE日志输出共分七个等级:没有日志(Nothing)、错误日志(Error)、最小日志(Minimal)、基本日志(Basic)、详细日志(Detailed)、调试日志(Debug)、行级日志(Rowlevel)。默认为基本日志。43精品课件KETTLE输出日志说明Nothing:不显示任何输出Error:仅仅显示错误信息Minimal:使用最小的日志Basic:缺省的日志级别Detailed:给出日志输出的细节Debug:调试目的,调试输出Rowlevel:打印出每一行记录的信息44精品课件KETTLE输出日志说明作业日志输出说明作业运行状态有两种:true(成功)/false(失败)。注意:失败不代表运行异常、出错。有时只是用来控制流程的一种决策、一种手段。45精品课件KETTLE输出日志说明程序异常退出情况46精品课件KETTLE输出日志说明转换日志输出说明I:当前步骤生成的记录数(从表输入、文件读入)O:当前步骤输出的记录数(输出到文件、表)R:当前步骤从前一步聚读取的记录数W:当前步骤向后面步骤抛出的记录数U:当前步骤更新过的记录数E:当前步骤处理出错的记录数47精品课件启动脚本说明KETTLE程序启动分两种,一种是作业、一种是转换。作业调用启动脚本:kitchen.sh(kitchen.bat)转换调用启动脚本:pan.sh(pan.bat)48精品课件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:设置参数,参数格式<NAME>=<VALUE>,例如-param:FOO=bar/listparam:列出转换里已经设置好的参数。/maxloglines:内存中保存日志的最大日志行数/maxlogtimeout:内存中保存日志的最长时间49精品课件Kettle运行方式–Kitchen命令行参数名列表:/rep:资源库名称/user:资源库用户名/pass:资源库密码/job:要启动的作业名称/dir:目录(不要忘了前缀/)/file:要启动的文件名(转换文件)/level:日志级别(Error,Nothing,Minimal,Basic,Detailed,Debug,Rowlevel)/logfile:要写入的日志文件/listdir:列出资源库里的目录/l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论