- 1、本文档共38页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Kettle简介:
Kettle是使用Java语言开发的一个开源ETL工具(Extract--Transform--Loading),完成数据的抽取、转换、加载工作。Kettle的意思是“水壶”,把各种各样的数据倒进水壶中,经过转换、处理,以我们所需的格式输出对我们有价值的信息。
问题:为什么要用kettle?需求:不同的数据库(同一种类型但实例不同的数据库,或者不同类型的数据库)之间、不同的数据存储形式(数据库、文本文件)之间需要协同工作,计算、处理、转换成我们需要的数据。
实际应用场景:对帐系统需要读取ATM的交易流水文件到Oracle数据库中并进行统计。
不使用kettle的情况:专门编写程序(Java或C)导入到数据库中,在Oracle中编写存储过程进行批量统计。
使用kettle的情况:通过“文本文件输入”step,指定分隔符,即可完成导入,无需编写程序;使用kettle中的各种对象可以完成统计功能,不需要编写存储过程。
两种情况??比:
情况一:需要编写专门的导入程序,不具备通用性。存储过程在不同类型的数据库中语法不同,也不具备通用性。但不需要掌握kettle。
情况二:不需要编写专门的导入程序,不同的文件格式只需要修改“文本文件输入”step中的对应参数即可。不需要针对不同的数据库编写不同版本的存储过程,只需要使用标准SQL就可以具备通用性。需要掌握kettle。
好处:跨数据库、跨平台,减少我们的工作量。
Kettle中有两种类型的对象,分别对应两种类型的文件。一种是Transformation(以后简称Trans),即转换;一种是Job,即工作。Trans完成具体的任务,Job用于控制转换之间的执行顺序。
第一部分:与数据库打交道
1创建数据库连接1新建一个Transformation,在“DB连接”下创建一个“数据库连接”,如下图所示: HYPERLINK about:blank
2如果创建kettle不支持的数据库的连接,ConnectionType选择Generic database。 HYPERLINK about:blank
2共享连接可以在不同的Transformation中共享,可以减少数据库配置工作。
右键单击需要共享的连接,选择“Share”选项,如下图所示: HYPERLINK about:blank
3用变量保存参数,在不同的环境下切换时会省心省力。
设置环境变量(编辑--设置环境变量,Ctrl+Alt+J),如下图所示:
HYPERLINK about:blank
在需要使用变量的地方通过${变量名}读取,参考“创建数据库连接”。
4从数据库中读取数据。(加工数据需要先读取数据)
1不带参数读取数据。
表输入(table Input),获取SQL查询语句,针对数据表的各种Actions。 HYPERLINK about:blank
2带参数读取数据。
两种参数方式:
第一种:占位符(?)
规则:关键字(例如:table、index),标识符(表名、索引名)不能通过这种占位符(?)参数传递。
HYPERLINK about:blank可以这样传递参数,但所有的参数类型必须一样。
HYPERLINK about:blank这样传递参数时,参数类型可以不同。
例子为:
HYPERLINK about:blank
注意:带参数查询在“表输入”中有时不能预览,需要运行转换去验证是否正确。
执行多次SQL语句,但条件取值不同,例如如下条件:
HYPERLINK about:blank
第二种:用变量名,例如:${ORDER_COLUMN}。
关键字(例如:table、index),标识符,整条SQL 语句都可以用变量替换,但使用时要小心。
在运行时才确定SQL语句:
设置环境变量(Ctrl+Alt+J),输入ORDER_COLUMN及其值,如下:
HYPERLINK about:blank
定义一个“表输入”,在“SQL”中输入带参数的SQL语句如下:
HYPERLINK about:blank
${ORDER_COLUMN}就是刚才设定的环变量。
选中“替换SQL语句里的变量”复选框。
相当于执行SELECT I_USERID, C_USERLOGINNAME, C_USERLOGINPWD, C_USERNAME, I_POSITIONID, D_CREATETIME, D_LASTLOGINTIME, I_LOGINCOUNT, I_ENABLED, C_MEMO FROM SYS_USER ORDER BY i_userid
注意:这里只替换环境变量,不替换占位符变量(?)。
定义输
您可能关注的文档
- 第4章动量和角动量题材.ppt
- IPMPC级2题材.doc
- 阳光亲子宝宝运动会-活动方案答辩.docx
- UE4材质教程题材.doc
- 测试技术基础习题-江征风题材.doc
- IP地址和子网掩码的关系题材.doc
- 测试模板(TestingReportTemplate)题材.doc
- IP基础知识_单选题题材.doc
- 第4章放大器基础-2-5题材.ppt
- 测试执行计划题材.doc
- 中国废水脱色机行业市场规模及未来投资方向研究报告.pdf
- 中国废液处理用电弧等离子枪行业市场规模及未来投资方向研究报告.pdf
- 中国废气回收非金属原料行业市场规模及未来投资方向研究报告.pdf
- 中国废水生化处理一体设备行业市场规模及未来投资方向研究报告.pdf
- 中国废气立式泵行业市场规模及未来投资方向研究报告.pdf
- 中国废气净化装置行业市场规模及未来投资方向研究报告.pdf
- 中国废气污水处理设备行业市场规模及未来投资方向研究报告.pdf
- 中国废气综合分析仪行业市场规模及未来投资方向研究报告.pdf
- 中国废气排放管理软件行业市场规模及未来投资方向研究报告.pdf
- 中国废气温度传感器行业市场规模及未来投资方向研究报告.pdf
最近下载
- 电子课件-《汽车维护与故障排除(第三版)》-A07-0365单元1 离合器的维护与故障诊断排除.pptx VIP
- 酒店保洁服务整体投标方案(技术方案).doc
- 精品解析:山东省潍坊市2023-2024学年高一下学期7月期末考试物理试题(解析版).docx VIP
- 职业性减压病的诊断.ppt VIP
- 应征入伍服兵役高等学校学生国家教育资助申请表1(样表).docx
- 部编版七年级语文上册狼.pptx VIP
- 2025年培训知识红十字会应急救护知识ppt课件.pptx VIP
- T/CEEMA 020-2020 燃气蒸汽联合循环发电机组对标管理办法.pdf VIP
- (完整版)电子倒计时定时器设计毕业设计论文.pdf VIP
- 高三语文作文指导议论文如何论证课件(共23张PPT).pdf VIP
文档评论(0)