码迷,mamicode.com
首页 > 其他好文 > 详细

Kettle-动态数据链接,使JOB得以复用

时间:2019-09-28 00:54:03      阅读:113      评论:0      收藏:0      [点我收藏+]

标签:com   必须   power   数据加载   指定   保存   ttl   class   获取数据   

动态数据连接,使JOB得以复用 

背景

移动执法系统在目前的主要的部署策略为1+N的方式,即总队部署一套,地市各部署一套,且基本都在环保专网。各地市的业务数据需要推送到总队系统,以便总队系统做整体的监督、决策。在整个数据对接过程中,基于Kettle开发的各地市对接省厅的ETL程序,除了数据链接信息不同之外,其他信息基本相同。重复开发的成本过高。是否可以通过切换数据库链接信息以复用相同的数据对接程序?
技术图片

设计思路

获取数据链接信息进行保存到结果,然后循环调用数据链接信息,动态配置给数据抽取的程序,以达到JOB的复用。
技术图片

kettle实现
  • 增加动态数据链接(使用变量的方式,以实现动态获取)
    技术图片
  • 执行入口JOB
    技术图片
  • 可复用JOB
    技术图片
  1. TR_LOAD_DB:获取数据链接信息,并将数据链接信息保存的记录(内存中);
  2. JOB_LOAD_ZFSJ_ITEM:可复用的数据对接程序
  3. TR_SET_DB_PRO:将传递过来的数据链接信息保存到变量中。
  4. TR_LOAD_[数据类型]:加载指定的业务数据
  5. TR_EXCUTE_SQL:各地市数据加载成功之后的后操作(非必须)
  • !重点设置说明

TR-LOAD-DB:
技术图片
JOB-LOAD-ZFSJ-ITEM:
为了可以逐条调用数据链接信息,需要配置成“执行每一个输入行”
技术图片
TR-SET-DB-PRO:
技术图片
TR-LOAD-[数据类型]:
源数据链接使用动态数据链接
技术图片

这样配置完成之后,针对1+N方式部署的系统,需要做数据对接整合的,就只需要开发一次数据对接程序,然后配置相应的数据链接信息,就可以完成对N个系统的数据对接工作,比起以前复制多份的方式,方便了很多,而且也便于以后进行维护。

Kettle-动态数据链接,使JOB得以复用

标签:com   必须   power   数据加载   指定   保存   ttl   class   获取数据   

原文地址:https://www.cnblogs.com/xiaotao726/p/11600949.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!