kettle学习笔记.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
kettle学习笔记

KETTLE学习笔记 作者:熊秋蕾 一、变量的设置和使用 下面是通过查询数据库表的最后插入时间,然后保存到变量中,再传入下一个数据源输入作为参数使用。如图: 在表输入组件中的设置: 其中需要注意的是,查询字段的数据类型,和后面组件使用时的类型,在这里,我需要的是字符串类型的,而INPUT_DATE字段在数据表中的类型是DATA 类型的,所以需要转换成字符串类型的。 在设置变量组件(Set Variables)中的配置: 其中,字段名称是上一个组件传过来的值的名称,变量名自己随便取,活动类型根据需要自行设置。这里可以设置Default value 的值,这个是变量的默认值。 数据源输入中的配置: 这里需要注意的是变量的使用方法,引用变量的方法是 ${变量名} 或者 %%变量名%%。 之前存入变量中的是字符串类型的,但是有个问题,变量中存的类型是normal类型的,在使用变量的时候,不能将 ${变量名} 直接当字符串使用,而是还得在两边加上单引号 ‘${变量名}’ 才能作为字符串。 这样就完成了一项变量的设置和使用。 二、增量抽取工作流程实现 下面是一个半自动化的从mysql数据库到Oracle数据库的增量抽取的工作流程 该流程分为 2个job、3个转换。 1.首先是大的job: 2.下面是获取数据源表名转换的内容 其中源数据表名输入的配置如下 3.配置子job为前面的每一条记录(即每个表)执行一次该子job: 4.下面是子job的内容: 表名称变量设置转换的内容如下: 设置变量Set Variables 的配置如下: 接下来是数据抽取转换: 表输入中的配置: 这部分是引用了之前设置的变量 ${TABLENAME} 作为表名参数,然后通过时间戳和上次最后的入库时间进行比对,查询出增量数据。这里需要注意的是,取出来的时间的格式问题,还有,目前由于未实现‘上次最后入库时间’的变量设置和注入,所以这里需要人工干预一下,手动查询出最后入库时间,然后以特定格式的字符串填写在上面的sql语句中。 最后是表输出的配置: 这里由于Oracle数据库中的目标表结构和mysql中的结构和字段名完全一样,所以不需要匹配数据库字段,让其默认自动匹配就行。

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档