ETL任务说明
一、 地方业务库 到 地方前置交换库

例:etl\nationfep\tofep\project目录下的配置
 总体任务
文件:project.kjb
建设项目相关的表的数据的转化

  1. 任务开始
  2. 转换(主要配置)
  3. 任务结束
    说明:任务是调度的单元,之后windows任务计划配置的任务和kettle任务一一对应。一个任务可以包含多个kettle转换,原则上没有限制,但应当按照某个相关主题进行配置,简化管理维护。
     转换
    文件:以ktr结尾
    以project.ktr为例

    数据库连接配置
     source为地方业务库
     target为地方前置交换库

    整体思路:获取前置交换库和业务库中的数据,进行比对,根据比对结果(一致的、改变了的、删除了的、新增的),对前置交换库进行新增(新增的)、修改(改变了的、删除了的,删除的也是做修改,只是标记为删除),新增、修改的数据都将为新的版本(原来前置交换库中最大的版本+1,原本不存在记录,则版本为1)。
  4. 获取本次同步记录的版本号
    读取前置交换库中的表的当前最大版本,将其加一,或设置为一(如最大值不存在,即无记录)
  5. 从业务库中获取数据,并增加DES_ID、DES_VERSION、DES_REPORT_TIME列
  6. 为上一个步骤的输出的DES_REPORT_TIME、DES_VERSION列增加数据类型和长度
  7. 对上一个步骤的输出进行排序,为合并数据做准备

    只需设置按ID进行升序排序
  8. 从前置交换库中获取数据

    不获取DES_TAG列
  9. 等待源表输入结束再继续执行
  10. 合并记录,对业务库和前置交换库的记录进行合并比对,增加flagfield列,标识比对结果
  11. 根据上一步骤比对的结果进行分支处理
  12. 选择列,去掉flagfield(不需要此步骤也没问题)
  13. 增加DES_TAG列,值为0,标识这是新增的数据
  14. 对新增的数据进行插入/更新操作
  15. 选择列,去掉flagfield(不需要此步骤也没问题)
  16. 增加DES_TAG列,值为1,标识这是修改的数据
  17. 等待步骤11结束再继续执行
  18. 对修改的数据进行插入/更新操作
    与步骤11类似
  19. 选择列,去掉flagfield(不需要此步骤也没问题)
  20. 增加DES_TAG列,值为2,标识这是删除的数据
  21. 等待步骤15结束再继续执行
  22. 对删除的数据进行更新操作
  23. 空操作

    二、 国家前置交换库 到 国家业务库
    例:etl\centerfep\fromfep\project目录下的配置
     总体任务
    文件:project.kjb
    建设项目相关的表的数据的转化
  24. 任务开始
  25. 转换(主要配置)
  26. 任务结束
    说明:任务是调度的单元,之后windows任务计划配置的任务和kettle任务一一对应。一个任务可以包含多个kettle转换,原则上没有限制,但应当按照某个相关主题进行配置,简化管理维护。
     转换
    文件:以ktr结尾
    以project.ktr为例

    数据库连接配置
     source为国家前置交换库
     target为国家业务库

    整体思路:获取上一次同步的版本号,查找前置交换库中大于该版本号的数据,对业务库中的数据,进行新增、修改、删除,在无错误的条件下,更新本次同步的版本号。
  27. 获取上一次同步的版本号
  28. 获取前置交换库中版本号大于上一次同步的版本号的数据

    不需要获取DES_ID、DES_REPORT_TIME、DES_VERSION列,需要获取DES_TAG列
  29. 根据DES_TAG列,进行分支处理,对DES_TAG为0、1的进行插入/更新,对DES_TAG为2的进行删除
  30. 对DES_TAG为0、1的进行插入/更新
  31. 对DES_TAG为2的进行删除
  32. 增加TABLE_NAME列,值与第1步骤的表名一致
  33. 等待步骤4、5成功再执行
  34. 更新版本号,标记本次同步的最大版本号

    三、 Windows任务计划配置
    每一个kettle job都需要相应配置一个Windows定时任务进行周期性执行。
    在kettle的任务目录下,建立windows-job目录,
    windows-job目录包含2个执行文件

    .bat文件中的内容:

    .vbs文件中的内容:

    配置windows任务
    控制面板->管理工具(小图标下才有)->任务计划程序

    双击进入管理界面,点击创建任务

    填写基本信息

    选择执行的操作
    操作->新建


    指定执行周期
    触发器->新建


    新建完成后,在任务列表中右键刚刚新建的任务,点击启动。

ETL(kettle)创建工作任务job详解相关推荐

  1. 创建emp表 oracle,Oracle中创建和管理表详解

    Oracle中创建和管理表详解 更新时间:2013年08月01日 15:44:16   作者: 以下是对Oracle中的创建和管理表进行了详细的分析介绍,需要的朋友可以过来参考下 SQL> /* ...

  2. 4个mos管驱动的全桥电路原理_最经典MOS管电路工作原理及详解没有之一

    欢迎加入技术交流QQ群(2000人):电力电子技术与新能源 1105621549 高可靠新能源行业顶尖自媒体 在这里有电力电子.新能源干货.行业发展趋势分析.最新产品介绍.众多技术达人与您分享经验,欢 ...

  3. python动态生成数据库表_Python-Flask:动态创建表的示例详解

    今天小编从项目的实际出发,由于项目某一个表的数据达到好几十万条,此时数据的增删查改会很慢:为了增加提高访问的速度,我们引入动态创建表. 代码如下: from app_factory import ap ...

  4. 0832工作原理详解_最经典MOS管电路工作原理及详解没有之一

    欢迎加入技术交流QQ群(2000人):电力电子技术与新能源 1105621549 高可靠新能源行业顶尖自媒体 在这里有电力电子.新能源干货.行业发展趋势分析.最新产品介绍.众多技术达人与您分享经验,欢 ...

  5. 在linux系统中创建文件夹,Linux系统中创建文件夹命令详解

    Linux系统中创建一个新的文件夹我们可以使用命令来执行,下面由学习啦小编为大家整理了Linux系统中创建文件夹命令详解,希望对大家有帮助! Linux系统中创建文件夹命令详解 一.mkdir命令使用 ...

  6. IIS连接数、并发连接数、最大并发工作线程数、应用程序池的队列长度、应用程序池的最大工作进程数详解

    IIS:连接数.并发连接数.最大并发工作线程数.应用程序池的队列长度.应用程序池的最大工作进程数详解 iis性能指标的各种概念:连接数.并发连接数.最大并发工作线程数.应用程序池的队列长度.应用程序池 ...

  7. MOS管电路工作原理及详解

    1.三个极的判断 2.P沟道.N沟道的判断 综上: 3. 寄生二极管方向判定 不论N沟道还是P沟道MOS管,中间衬底箭头方向和寄生二极管的箭头方向总是一致的: 要么都由S指向D,要么都有D指向S 4. ...

  8. mysql创建存储过程及函数详解

    文章来源: 学习通http://www.bdgxy.com/ 目录 1. 存储过程 1.1. 基本语法 1.2 创建一个指定执行权限的存储过程 1.3?DELIMITER 的使用 2. 创建函数? 1 ...

  9. TYPE-C接口的工作原理图文详解

    TYPE-C接口的工作原理图文详解 发表于 2018-01-29 09:53:53 电子常识 +关注 2016年,有一个名词在手机上非常火,几乎所有的旗舰手机都会提到这个名词,说到这,大家应该都够猜到 ...

最新文章

  1. safari快捷图标不见了_Win7桌面图标不见了怎么办?附解决办法
  2. 简单的一阶低通滤波器
  3. [Python]元组与列表的区别及内建用法
  4. 赞!史上最全的互联网思维精髓总结
  5. mysql etc rc.local_CentOS 7 开机启动自定义配置文件:/etc/rc.local 不执行解决办法 | IT运维网...
  6. python什么是交换算法_python算法-015将链表元素两两交换元素(交换值、就地翻转)...
  7. 使用 Apache Lucene 搜索文本——轻松为应用程序构建搜索和索引功能
  8. postgresql 动态添加过滤条件_通过窗口函数进行过滤导致Postgresql
  9. java的多线程访问共享变量_java多线程通信之共享变量
  10. client 连接 host —— 虚拟机
  11. 自己动手架设linux下Web服务器(图)5
  12. ERROR! The server quit without updating PID file (/usr/local/var/mysql/apple,卸载,重装一个,我的方案
  13. 最后7天!阿里云2020云内存数据库峰会现场参会报名中
  14. Express全系列教程之(十):渲染jade模板引擎
  15. 用python自动办公 麻瓜_(视频教程)下载:麻瓜编程Python商业爬虫学徒计划python自动化办公麻瓜麻瓜编程...
  16. 切身体验的优秀时间管理法——番茄时间工作法!
  17. php大文件去重,详细解说PHP多个进程配合redis的有序集合实现大文件去重
  18. rpa操作excel_一文看懂RPA与Excel宏的区别
  19. Java游戏项目之坦克大战
  20. 【打卡-Coggle竞赛学习2023年4月】图像检索与重复图像识别

热门文章

  1. SQL语句中having与where的区别
  2. aw2013驱动分析
  3. Cannot use JSX unless the ‘--jsx‘ flag is provided.
  4. Java基础数据类型与运算符
  5. 运营商大数据的市场价值有那些作用?
  6. 黑客攻击的几种常用手法
  7. Job Statement
  8. 史上最“牛”,荣辱参半的的JAVA群规和QQ群
  9. 一专多能、刻意练习和终身成长
  10. 剑指 Offer 05. 替换空格 三种方法