使用kettle进行增量抽取数据

需求背景:       

        当下行业,做程序不在是一味的写增删改查了。数据汇聚、数据清洗、数据转换已成为普遍现象,本人所在的项目就是这样的一个情况。由于客户建设的系统数量多,业务分支复杂。虽同属一个主业务,但每次统筹决策查询数据时就犯难了。由于数据孤岛,关联查询成为最难解决的问题。为了解决这个问题,我需要做的就是将几十个系统数据全部汇聚在一起,方便后续的数据分析使用。

        说到数据汇聚,我们通常采用的办法就是通过ETL工具进行抽取,也有通过Oracle触发器利用dblink方法同步的,也有采用ogg(商业使用收费)的,也有利用双机热备的,总之不管哪种方法适合自己的才是最好的!我这里用的是开源免费的ETL工具 —— kettle,下面简单将自己工作中对使用kettle增量抽取的理解和流程写出来,希望能帮助到入门的猿友,也欢迎各路大神和老师们的指教!废话不多说,先上作业图:

        此作业运行环境需保证业务数据不能有物理删除情况,被删除的数据无法进行同步。且源数据表必须包含“更新时间”字段,无论新增数据还是修改数据,都要同步修改“更新时间”字段,以便我们接下来做基于“更新时间”的增量同步操作。

获取抽取状态:

        这个组件主要用来做区间段执行判断的,因为kettle里只有定点执行和间隔时间执行。

var now = new Date();
var h = now.getHours();
var m =
  • 19
    点赞
  • 86
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值