欢迎来到天天文库
浏览记录
ID:6149107
大小:2.90 MB
页数:19页
时间:2018-01-04
《pantaho_kettle插件开发》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、PantahoKettle插件开发2012年03月文档修改记录版本修订人修订说明联系方式发布日期1.0吴仲文初稿201203281.1吴仲文加入kettle介绍,本插件隶属范围201203291.2Tjbsl补充说明tjbsl@126.com2014/121.3Tjbsl插件开发过程中的认识tjbsl@126.com2014/12/15目录1Kettle31.1Kettle介绍31.2Kettle组件31.3Kettle插件32Kettle转换步骤插件开发42.1Kettle转换步骤插件开发概述42.1.1Kettle
2、转换步骤插件至少需要实现四个接口42.1.2Kettle转换步骤插件各个类命名推荐规则42.2Kettle转换步骤插件开发例子52.2.1Kettle转换步骤插件初步开发52.2.2Kettle转换步骤插件功能完善72.3Kettle转换步骤插件部署15PantahoKettle插件开发91Kettle1.1Kettle介绍Kettle也叫PDI,在2006年kettle加入了开源的BI组织Pantaho,正式命名为PDI(PantahoDataIntegeration),而kettle是“KettleE.T.T.L.
3、Envirnoment”的缩写。kettle是一款国外开源的ETL(ExtractTransformLoad)工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,被设计用来抽取、转换、装入和加载数据,可以形象的理解为将各种数据放入到一个壶里面然后以一种指定的格式流出来。Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。1.2Kettle组件1.Spoon:一个图形用户界面,用来运行tran
4、sformation(转换)和job(任务),其中transformation是用Pan工具来运行,任务是用Kitchen来运行。2.Pan:一个数据转换引擎,主要用来执行数据源读取,操作和写入数据等等功能。3.Kitchen:一个运行任务(利用XML或数据资源库描述)的工具。1.3Kettle插件Kettle本身提供了很多组件,多个组件一起构成一个transformation(转换),多个转换一起构成一个job(任务)。kettle的组件已经非常丰富,在组件不满足需求时可以在kettle上面开发自己的组件,kettl
5、e支持的组件开发如下:PantahoKettle插件开发9注意:本文档接下来的内容只讲解“转换步骤插件”开发1Kettle转换步骤插件开发2.1Kettle转换步骤插件开发概述2.1.1Kettle转换步骤插件至少需要实现四个接口org.pentaho.di.trans.step.StepMetaInterface:元数据的处理,加载xml,校验,主要是对一个步骤的定义的基本数据。org.pentaho.di.trans.step.StepDataInterface:数据处理涉及的具体数据,以及对数据的状态的设置和回收
6、。org.pentaho.di.trans.step.StepInterface:负责数据处理,转换和流转。这里面主要由processRow()方法来处理。org.pentaho.di.trans.step.StepDialogInterface:提供GUI/dialog,编辑步骤的元数据。对于以上四个接口的实现,都有相应的基类,具体的步骤只需要继承基类和实现相应的接口即可。2.1.2Kettle转换步骤插件各个类命名推荐规则stepInterface的实现类以插件的功能相关命名:*.javastepDataInter
7、face的实现类:*Data.javastepMetaInterface实现类:*Meta.javaStepDialogInterface的实现类:*Dialog.javaPantahoKettle插件开发92.2Kettle转换步骤插件开发例子本例子主要实现功能:将输入的HTTPURL列表供后续步骤使用。2.2.1Kettle转换步骤插件初步开发1.在“src-plugins”下创建文件夹“kettle-urlContentValidate-plugin”,然后依次创建上面四个接口类的实现,如下图:2.上图中四个类实
8、现的接口在kettle中已经有实现类,在实际开发中我们继承就可以了,简单截图如下:3.在“plugins”子文件夹“step”下建立文件夹“UrlContentValidatePlugin”,增加的配置文件截图如下:PantahoKettle插件开发94.修改“plugin.xml”配置内容如下5.将创建的源代码加入“javabu
此文档下载收益归作者所有