版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年中职幼儿保育(幼儿行为观察)试题及答案
- 2025年中职会计学(会计学概论)试题及答案
- 2025年中职计算机应用(计算机应用技术)试题及答案
- 2025年高职地图数据标题转换技术(标题转换实操)试题及答案
- (正式版)DB21∕T 20008-2024 《滑雪场所巡查救助人员管理规范》
- (16区全套) 上海市16区2026届初三一模化学试卷合集(含答案)
- 2026安徽蚌埠市固镇县杨庙镇面向全县选聘村党组织书记后备力量4人备考题库及答案详解(夺冠系列)
- 晚安问候话术
- 四川省绵阳市盐亭县2025-2026学年八年级上学期1月期末语文试题
- 2025-2026学年第一学期广东省深圳市龙岗区高三期末历史测试题(二)(含答案)
- (正式版)DB51∕T 2732-2025 《用材林培育技术规程 杉木》
- 八年级下册 第六单元写作 负责任地表达 教学课件
- 美容院2025年度工作总结与2026年发展规划
- 26年三上语文期末密押卷含答题卡
- 2026届云南省昆明市西山区民中数学高一上期末考试模拟试题含解析
- 2025-2030乌干达基于咖啡的种植行业市场现状供需分析及投资评估规划分析研究报告
- 2026年共青团中央所属单位招聘66人备考题库及答案详解一套
- 人民警察法培训课件
- 小糖人课件:糖尿病患者儿童糖尿病的护理
- 小猫绝育协议书
- 2025年12月福建厦门市鹭江创新实验室管理序列岗位招聘8人备考题库必考题
评论
0/150
提交评论