版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Kettle 培训手册Etl 介绍ETL(EExtrractt-Trranssforrm-LLoadd的缩写写,即数数据抽取取、转换换、装载载的过程程),对对于金融IT 来说,经经常会遇遇到大数数据量的的处理,转转换,迁迁移,所所以了解解并掌握握一种etl工具具的使用用,必不不可少。Kettlle是一一款国外外开源的的etll工具,纯纯javva编写写,绿色色无需安安装,数数据抽取取高效稳定。KKetttle中中有两种种脚本文文件,ttrannsfoormaatioon和jobb,traansfformmatiion完完成针对数据的基基础转换换,joob则完完成整个个工作流流的控制制。kett
2、lle 部部署运行行将ketttle22.5.1文件件夹拷贝贝到本地地路径,例例如D 盘根目目录。双击运行kketttle文文件夹下下的sppoonn.baat文件件,出现现ketttlee欢迎界界面:稍等几秒选择没有资资源库,打打开keettlle主界界面创建traansfformmatiion,jobb点击页面左左上角的的创建一一个新的的traansfformmatiion,点点击保存存到本地地路径,例如保保存到DD:/eetlttestt下,保保存文件件名为EEtlttesttTraans,ketttlee默认trranssforrmattionn文件保存后后后缀名名为kttr点击页面左
3、左上角的的创建一一个新的的jobb,点击击保存到到本地路路径,例例如保存到D:/etlltesst下,保保存文件件名为EEtlttesttJobb,ketttlee默认joob文件件保存后后后缀名名为kjb创建数据库库连接在trannsfoormaatioon页面面下,点点击左边边的【MMainn Trree】,双双击【DDB连接接】,进进行数据库连接接配置。conneectiion namme自命命名连接接名称Conneectiion typpe选择择需要连连接的数数据库Methood oof aacceess选选择连接接类型Serveer hhostt naame写写入数据据库服务务器的i
4、ip地址址Databbasee naame写入数数据库名名Port nummberr写入端端口号Usernnamee写入用用户名Passwwordd写入密密码例如如下配配置:点击【teest】,如如果出现现如下提提示则说说明配置置成功点击关闭,再再点击确确定保存存数据库库连接。一个简单的的ktrr 例子子目的:将一个数据据库导入入到另一一个数据据库中。操作步骤:创建一个ttrannsfoormaatioon,命命名为eetlTesttTraans.ktrr,创建建数据库库连接ods,点点击【IInpuut】,选选中【表表输入】,拖拖到主窗窗口,释释放鼠标标,双击击打开如下图点击【Trranss
5、forrm】,选选中【字字段选择择】,拖拖到主窗窗口,释释放鼠标标点击【Ouutpuut】,选选中【表表输出】,拖拖到主窗窗口,释释放鼠标标建立【文本本文件输输入】和和【字段段选择】与与【字段段选择】和和【表输输出】的的连接双击【表输输出】,目目标表中中写入ZZT_TTESTT_KEETTLLE,确确定保存存双击【字段段选择】,点点击 获取选选择的字字段,再再点击EEdltt Maappiing,点点击OKK确定,编辑辑所有字字段对应应关系,点点确定。点击运行这这个转换换。,则则将上一一个kttr中生生成的文文本,导导入到数数据库当当中。一个简单的的kjbb例子目的:将上一个ttrannsfo
6、ormaatioon在一一个joob里面面调用执执行。操作步骤:在etlTTesttJobb页面,点点击【CCoree Obbjeccts】,点点击【JJob enttriees】,选选中【SSTARRT】拖动到主窗窗口释放放鼠标,再再选中【Transformation】,拖动到主窗口释放鼠标,建立【STTARTT】和【TTrannsfoormaatioon】之之间的连连接。双击【Trranssforrmattionn 】, 在Traansfformmatiion fillenaame 中写入入E:keettlleWoorksspacceeetlTTesttTraans.ktrr,确定定保存。
7、点击保存创创建好的的jobb。点击运行这这个转换换。待所有任务务都显示示成功,则则为joob调用用traansfformmatiion运运行成功功。一个增量的的例子增量更新按按照数据据种类的的不同大大概可以以分成:1.只增加加,不更更新,22.只只更新,不不增加33.即即增加也也更新44.有有删除,有有增加,有有更新下面针对前前三种做做一个增增量的EETL抽抽取。过过程如下下:根据前面讲讲解的例例子一样样,首先先建立源源表(ffinaa_teest11)和目目标表(ffinaa_teest22),整整个设计计流程如如下:其中第一个个步骤(输输入-目目标表)的sql 大概如下模式:selecct
8、 iifnuull(maxx(daate_seaal),19900-01-01 00:00:00) ffromm fiina_tesst2你会注意到到第二个个步骤和和第一个个步骤的的连接是是黄色的的线,这这是因为为第二个个tabble inpput(输输入-源源表)步步骤把前前面一个个步骤的的输出当当作一个个参数来来用,所所有Keettlle用黄黄色的线线来表示示,第二二个taablee innputt(输入入-源表表) 的的sqll 模式式大概如如下:SSELEECT * FROOM ffinaa_teest11 whheree daate_seaal?后面的一个个问号就就是表示示它需要要接
9、受一一个参数数,你在在这个ttablle iinpuut(输输入-源源表)下下面需要要指定rrepllacee vaariaablee inn sccrippt 选选项和 执行每每一行 为选中中状态,这这样,KKetttle就就会循环环执行这这个sqql , 执行行的次数数为前面面参数步步骤传入入的数据据集的大大小。关于第三个个步骤执执行插入入/更新新步骤需需要特别别解释一一下,Kettlle执行行这个步步骤是需需要两个个数据流流对比,其其中一个个是目标标数据库库,你在在目标表表 里面面指定的的,它放放在用来来查询的的关键字字左边的表字段段里面的的,另外外一个数数据流就就是你在在前一个个步骤传
10、传进来的的,它放放在用来来查询的的关键字字 的右右边,KKetttle首首先用你你传进来来的keey 在在数据库库中查询询这些记记录,如如果没有有找到,它它就插入入一条记记录,所所有的值值都跟你你原来的的值相同同,如果果根据这这个keey找到到了这条条记录,kketttle会会比较这这两条记记录,根根据你指指定uppdatte ffielld 来来比较,如如果数据据完全一一样,kketttle就就什么都都不做,如如果记录录不完全全一样,kketttle就就执行一一个uppdatte 步步骤。备注:主键键被修改改得数据据认为是是新记录录 删除除的数据据由在仓仓库中需需要保留留无需考考虑然后点击新
11、新建-jjob,然然后joob的核核心对象象jobb enntriies拉拉出组建建,进行行执行抽抽取。创建ketttlee资料库库资源库是用用来保存存转换任任务的,用用户通过过图形界界面创建建的的转转换任务务可以保保存在资资源库中中。资源源库可以以是各种种常见的的数据库库,用户户通过用用户名/密码来来访问资资源库中中的资源源,默认认的用户户名/密码是是admmin/admmin资源库并不不是必须须的,如如果没有有资源库库,用户户还可以以把转换换任务保保存在 xmll 文件件中。如果用户需需要创建建一个资资源库,在在资源库库的登录录窗口(PPDI 启动时时的第一一个窗口口)中有 【新新建】 按
12、钮,点点击该按按钮弹出出新建资资源库窗窗口,在该窗口中中选择一一个数据据库连接接,如果果没有事事先定义义的数据据库连接接,则还还要点击击【新建建】按钮钮,来创创建一个个数据库库连接。选选择数据据库连接接后,要要为该资资源库命命名,作作为这个个资源库库的唯一一标志,最后选择【创创建或更更新】按按钮来创创建这个个资源库库。资源库可以以使多用用户共享享转换任任务,转转换任务务在资源源库中是是以文件件夹形式式分组管管理的,用用户可以以自定义义文件夹夹名称。如何使用kketttle读读取包含含多行表表的Exxcell文件如果 Exxcell 工作作表的表表头只有有一行,使用 Ketttlee 读取取这样
13、的的文件是是很容易易的.如如果 EExceel 工工作表的的表头是是多行的的, 或或者是分分级的就就需要在在内容标标签下正正确设置置列名所所占行数数才可以以读取.考虑这样的的一个工工作表如果想把里里面的 12列数数据都读读出来, 就要要考虑如如何处理理多级表表头.步骤设置的的详细描描述:步骤一 选选择文件件名,现现在文件件或目录录里到所所要添加加的exxcell文档,然然后点击击,确定定后,点点击,步骤二 选选择要读读取的工工作表名名称和要要读取的的内容在在工作表表里的起起始位置置, 也也就是表表头开始始的行号号和列号号 (这这里行号号和列号号是以 0 开开始的)步骤三 设设置要读读取的内内容
14、的一一些属性性, 这这里要设设置表头头的所占占行数是是 4行.步骤四 错错误处理理, 选选择如果果有错误误终止还还是继续续, 错错误信息息保存的的文件等等.(图略)步骤五 选选择字段段, 如如果前面面的三个个步骤(不包括括错误处处理步骤骤)都设设置正确确, 在在这个页页面选择择 获获取字段段 字字段按钮钮, 就就会获得得所有的的列名称称和数据据类型.这里我我们可以以看到: 多级级表头中中各级表表头的名名称被叠叠加起来来, 形形成了唯唯一的列列名.点击 预预览 按钮可可以预览览到数据据对于表头跨跨连续的的多行, 但不不分级的的情况也也可以使使用上述述方式处处理.kettlle注释释:kettll
15、e的控控制流可可以设置置一些简简单的时时间,并并且可以以实现隔隔断天、周周、月(三三个只能能选一个个,不能能选那个个月的那那周那日日),但但是keettlle工具具不能关关,如果果关了,必必须重新新启动。kettlle里面面缺少一一个编辑辑的字段段的插件件,导致致字段编编辑很麻麻烦,这这只能先先sqll中进行行手写,这这个对写写sqll的要求很很高。一个ketttlee字段转转换(截截取)的的例子大致的流程程是:表输入还是是正常的的sqll查询,没没有添加加参数。字段转换(截截取)是是在进行行修改。具具体样式式如下:具体的用法法:transsforrm FFuncctioons 里面包包括了字字符、数数字的一一些函数数方法,这这些函数数方法可可以解决决一些字字段需要要转化的的问题。Inputt fiie
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年光伏发电项目投资合同3篇
- 2024年度沥青企业劳动合同3篇
- 2024年医疗器械产品区域独家代理合同
- 2024版家用电器销售合同with退换货政策3篇
- 2024年二手住宅购买合同标准格式3篇
- 2024年定制住宅建设协议6篇
- 2024年度高校教师薪酬福利与聘用合同3篇
- 2024年临时护士聘用协议
- 有色金属合同专用章使用规范
- 2024年度股权转让合同:某创业公司股东之间进行股权转让的法律文件3篇
- 综合医院放射治疗人员和组织要求
- 儿童福利机构设备配置标准
- 第六章、船舶通信设备
- 现在分词与过去分词的区别
- 三次元日常维护点检表
- 浅谈如何抓好重点项目前期工作
- 干部个人主要特点及具体事例干部个人主要特点及具体事例3篇
- 中医药产业投资引导基金设立方案
- 在高中班级管理中如何发挥学生自主管理的作用研究
- 新版PEP小学英语五年级上册—各单元语法练习题(共3页)
- 中医预防保健调理技术砭术PPT课件
评论
0/150
提交评论