zoukankan      html  css  js  c++  java
  • Kettle-动态数据链接,使JOB得以复用

    动态数据连接,使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个系统的数据对接工作,比起以前复制多份的方式,方便了很多,而且也便于以后进行维护。

  • 相关阅读:
    POJ 1953 World Cup Noise
    POJ 1995 Raising Modulo Numbers (快速幂取余)
    poj 1256 Anagram
    POJ 1218 THE DRUNK JAILER
    POJ 1316 Self Numbers
    POJ 1663 Number Steps
    POJ 1664 放苹果
    如何查看DIV被设置什么CSS样式
    独行DIV自适应宽度布局CSS实例与扩大应用范围
    python 从入门到精通教程一:[1]Hello,world!
  • 原文地址:https://www.cnblogs.com/xiaotao726/p/11600949.html
Copyright © 2011-2022 走看看