




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、Kettle 基础培训,目录,一、ETL介绍 二、 Kettle 介绍 三、 Kettle的要求环境(JDK版本)、安装、基本操作。 四、 Kettle的组件的类型基本说明(作业与转换) 五、基于表对表的同步 六、基于文件到表的同步 七、基于表到文件的同步 八、 JAVASCRIPT的基本应用 九、文件FTP下载、上传。 十、作业调用作业、转换。 十一、启动脚本说明。 十二、 JAVA调用作业、转换 十三、使用原则,简介ETL,ETL(即数据抽取、转换、装载的过程)作为BI/DW(Business Intelligence)的核心和灵魂,能够按照统一的规则集成并提高数据的价值,是负责完成数据从
2、数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。 ETL是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。,简介Kettle,Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。 Kettle 中文名称叫水壶。 Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什
3、么,而不是你想怎么做。 Kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制。,KETTLE的要求环境(JDK版本)、安装、基本操作,KETTLE要求先安装JDK1.5版本或以上 无需安装下载后直接运行spoon.bat即可,5,KETTLE的组件的类型基本说明(作业与转换),Kettle中有两种脚本文件,transformation(转换,后缀为.ktr)和job(作业, 后缀为.kjb),transformation完成针对数据的基础转换,好比工厂里的生产流水线,每个组件相当于一个员工;job则
4、完成整个工作流的控制,好比工厂里的管理。 如果用记事本打开文件可发现转换和作业都是xml类型文件。,6,KETTLE的组件的类型基本说明(作业与转换),7,作业:分串行执行和并行执行,串行执行是先执行完其中一条线再执行另一条线,并行是两条线同时执行,同一条线上的两个步聚会先执行前面的再执行后面的,每个步骤执行结果分两种:true(成功)/false(失败),根据返回结果可以控制流程走向。,KETTLE的组件的类型基本说明(作业与转换),8,作业流程图说明,KETTLE的组件的类型基本说明(作业与转换),9,转换:一传递分复制和分发两种模式。开始所有步骤同时运行,记录会从最前端的步骤向后传递,传
5、递到相应步骤则该记录被该步骤作相应处理,处理完成再把记录往后传递,记录,KETTLE的组件的类型基本说明(作业与转换),10,复制:把一份数据复制成多份,后面步骤各占一份。 分发:把一份数据平均分配给后面步骤。,基于表对表的同步,11,表对表同步是最基本的同步方式之一 实现步骤: 一、建立源库连接和目标库连接 二、使用表输入组件进行源表数据读取 三、对记录进行适配整理 四、使用表输出组件输出到目标表,KETTLE的组件的类型基本说明(作业与转换),12,新建一个转换:文件新建转换,基于表对表的同步,13,基于表对表的同步,14,基于表对表的同步,15,基于表对表的同步,16,基于文件到表的同步
6、,17,新建一个转换 流程:从文件读取记录插入到数据库中,基于文件到表的同步,18,基于文件到表的同步,19,基于文件到表的同步,20,基于表到文件的同步,21,新建一个转换 实现从表里读取记录生成文件,基于表到文件的同步,22,基于表到文件的同步,23,基于表到文件的同步,24,JAVASCRIPT的基本应用,25,文件FTP下载、上传,26,作业:FTP下载 从FTP上下载相应文件到指定目录下,文件FTP下载、上传,27,文件FTP下载、上传,28,文件FTP下载、上传,29,作业:FTP上传 上传本地文件到相应FTP指定目录上,文件FTP下载、上传,30,作业调用作业、转换,31,文件新
7、建作业 作业可以调用作业,这样方便流程控制。,作业调用作业、转换,32,作业调用作业、转换,33,作业也可以调用转换,作业调用作业、转换,34,启动脚本说明,35,KETTLE程序启动分两种,一种是作业、一种是转换。 作业调用启动脚本: kitchen.sh( kitchen.bat) 转换调用启动脚本: pan.sh( pan.bat),启动脚本说明,36,kitchen.sh(span.sh)说明,启动脚本说明,37,Kitchen.bat(span.bat)说明,启动脚本说明,38,WINDOWS系统下的作业启动脚本写法 /file 作业入口路径 /level 日志输出等级 /logfi
8、le 日志输出文件,启动脚本说明,39,LINUX系统下的启动脚本写法,启动脚本说明,40,转换调动脚本写法 WINDOWS和LINUX系统的启动脚本的写法基本一样,就是pan.sh/pan.bat的区别,Java调用,引用Kettle jar包,Java调用JOB,传入变量 JOB文件设置变量: 变量传递: Variable substitution 选中,Java调用JOB,调用JOB JobMeta jobMeta = new JobMeta(jobPath, null); JVM设置变量: System.getProperties().setProperty(key, value);
9、Job job=new Job(null, jobMeta); job.start(); job.waitUntilFinished();,Java调用KTR,传入变量,Java调用KTR,调用ktr TransMeta localTransMeta = localTransMeta = new TransMeta(ktrPath); 设置变量 localTransMeta.setVariable(key,value) Trans tran=new Trans(localTransMeta ) tran.execute(null); tran.waitUntilFinished();,使用原则,可以使用sql 来做的一些操作尽量用sql ; Group , merge , stream lookup ,split field 这些操作都是比较慢的,想办法避免它们.能用sql 就用sql 尽量避免使用update , delete 操作,尤其是update , 如果可以把update 变成先delete , 后insert . 尽量不要用kettle 的calculate 计算步骤,能用数据库本身的sql 就用sql ,不能用sql 就尽量想办法用procedure , 实在不行才是calculate 步骤. 能使用truncate tabl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 劳务合同范本广告
- 个人委托门面出租合同范本
- 公租房摊位出租合同范本
- 业主自建翻车装修合同范本
- 第14课 文艺复兴运动(教学设计)-2024-2025学年九年级历史上册素养提升教学设计(统编版)
- 低价转让合同范本
- 云溪区土地流转合同范本
- 买新盘合同范本
- 公司员工兼职合同范本
- 代工工厂保密合同范本
- 结直肠癌治疗研究进展2024年
- TD/T 1072-2022 国土调查坡度分级图制作技术规定(正式版)
- 员工薪酬确认书三篇
- DZ∕T 0148-2014 水文水井地质钻探规程(正式版)
- 新能源汽车电气技术 课件 项目一 新能源汽车电气维修基础认知
- 人教版初中九年级下学期体育教案全集(附教学计划)
- 2024年湘潭医卫职业技术学院单招职业技能测试题库及答案解析
- 2024年黑龙江职业学院单招职业技能测试题库及答案解析
- 2024年合肥市高三第二次教学质量(二模)英语试卷(含答案)
- 2024届浙江省初中学业水平测试中考科学测模拟试题(二模)附答案
- 矿山井架设计规范
评论
0/150
提交评论