天呕心沥血花了8个小时给大家带来kettle工作中最常见的四种复杂实例,90%的项目用到这4种实例都可以解决。

4种实例种还有2种通用kettle工具,使用这两种通用工具实例,可以直接修改相应的配置文件,完成数据的同步。

下面就一一给大家带来这4种实例,完全原创且可以拿来直接使用,废话不说,下面直接给大家带来具体实例:

KETTLE4个工作中有用的复杂实例--1、数据定时自动(自动抽取)同步作业

一、表数据自动同步

1、为了给大家更直观的展示,【大喇叭玩转数据库】首先在数据库创建4张表,表结构如下:

  • t_student_kettle 学生数据源表;
  • t_student_kettle_target 学生目标数据表;
  • t_class 班级数据源表;
  • t_class_target 班级 班级目标数据表;
  • t_tbrz 同步日志表
--1、学生数据源表
-- Create table
create table T_STUDENT_KETTLE
(id     INTEGER,name   VARCHAR2(2000),sex    VARCHAR2(2000),age    INTEGER,cjsj   DATE,zhgxsj DATE default sysdate
)
tablespace MYSPACEpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlimited);--学生目标数据表
-- Create table
create table T_STUDENT_KETTLE_TARGET
(id     INTEGER,name   VARCHAR2(2000),sex    VARCHAR2(2000),age    INTEGER,cjsj   DATE,zhgxsj DATE default sysdate
)
tablespace MYSPACEpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlimited);--班级数据源表
-- Create table
create table T_CLASS
(id     NUMBER,class  VARCHAR2(100),cjsj   DATE,zhgxsj DATE
)
tablespace MYSPACEpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlimited);--班级目标数据表
-- Create table
create table T_CLASS_TARGET
(id     NUMBER,class  VARCHAR2(100),cjsj   DATE,zhgxsj DATE
)
tablespace MYSPACEpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlimited);-- 同步日志表
-- Create table
create table T_TBRZ
(id     NUMBER,  --idtbcgsj DATE,    --同步成功时间(结束时间)tbkssj DATE,    --同步开始时间bm     VARCHAR2(100),   --同步表名tbjg   CHAR(1)   --同步结果:1-成功;2-未成功
)
tablespace MYSPACEpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlimited);--创建同步日志表的序列
create sequence SEQ_T_TBRZ
minvalue 1
maxvalue 999999999
start with 81
increment by 1
cache 20;

2、配置数据库连接地址,一般项目上会通过配置jndi数据源直接连接数据库,不在配置jdbc数据源了,有点类似于java的配置

3、设置数据库连接,通过JNDI方式

4、作业整体流程

需要用到1个作业和6个转换来操作2张表,一个表是3个转换来完成,几张表总共的转换就是N*3个转换。

下图为整个作业的流程:

由上面流程图可以看到,start分了两个分支,一个是class表,一个是student表,下面我们来一一点开每个转换看下。

1)T_CLASS数据变量设置

如上图,T_CLASS数据变量设置,该步骤是获取上次同步的成功时间,做为下次同步的开始时间,并设置到环境变量中,供后续的数据流调用

2)T_CLASS数据变量设置

如上图,T_CLASS数据更新步骤,该步骤是获取上次同步的成功时间之后的数据,插入更新到表中。

3)T_CLASS保存同步日志

KETTLE4个工作中有用的复杂实例--1、数据定时自动(自动抽取)同步作业相关推荐

  1. 用计算机根据姓名填充地址,如何在一个excel表格中引用另一个表格的数据,并自动填充-excel自动填写,excel按照姓名自动匹配数据...

    操作如下抄: 1.首先建立好月数据表格 2.之后是要在日数据袭表格中将两个表中项目(示例,可设为其他条件)所对应的数据自动填写 3.点击输入数据的首行单元格,选择插入函百数 4.选择VLOOKUP函数 ...

  2. JAVA实现Excel照相机功能_Excel如何将工作表转换为图片,并随着数据的变化自动更新?...

    随着Microsoft Office版本的更新,越来越多的功能汇集到软件之中.一些常用的功能放在"台面"上,方便用户使用.一些新增的.不常使用的功能却被隐藏起来,需要用户根据需要进 ...

  3. SD question:客户主数据中“合伙人功能”视图里面的数据怎么样才能自动带出来?...

    最近在创建customer master data的时候,发现在配置sales area data的时候里面的合伙人功能这个tab,无法自动带出相关的party ,本来的想法是四个party都是使用一 ...

  4. oracle中主键自增长,oracle 数据库主键自动增长方法

    oracle 数据库没有像 MYSQL一样有 自动ID增值 的功能,如要实现可以用触发器. 首先就是建立一个序列,序列有有自动增值的功能,再建立一个触发器. 如: 建立一个序列 CREATE SEQU ...

  5. exce中让两列数据一一对应_工作中被重复数据所烦恼?学会这几个Excel技巧,少加班...

    工作中,经常被重复的数据所困扰,那就学下这几个关于重复值的技巧,每天5分钟,工作更轻松! 1.快速查找单列重复数据 如果某一列中,有的数据是重复的,我们希望把它找出来,可以在条件格式中突出单元格,然后 ...

  6. 2019 FME博客大赛 ——FME在三调工作中的应用

    参赛单元:传统GIS数据处理 作者:李芃乐 单位:陕西迪博景源测绘地理信息有限公司 一.前言 很有幸在入测绘这行的时候就接触了强大的FME,回顾FME陪伴我的这四年,从最开始最简单的格式转换,到照猫画 ...

  7. 工作中一个简单python数据处理-统计csv文件并画柱状图

    工作中一个简单python数据处理 工作中需要parsing一些短信数据,会有接口直接将数据导入到csv文件,但是报告时需要统计csv文件中数据频率,所以写了一个python脚本做一些简单处理. 流程 ...

  8. Boss直聘微简历(个人实例)本人找实习工作中,欢迎联系

    我的问答 回答会展示在微简历下方 已回答问题 17 个 个人情况 个人工作的规划 想先在杭州长期发展,找一份前端工作,想在中小企业共同发展,来施展才华. 工作再忙,也得逛逛CSDN,学习新的知识,充实 ...

  9. 工作中使用到的单词(软件开发)_2022-02-26_备份

    ■原文 工作中使用到的单词(软件开发)_sun0322-CSDN博客 目录 ■常用链接 ■2020/03/15  (最初整理  242个单词) 2020 6/28 整理 2020 6/29 整理 20 ...

  10. Linux工作中必知必会的命令总结

    目录 1 打包解压命令 1.1 打包命令 1.2 解压命令 1.3 打包解压命令总结 2 权限设置 3 指定用户执行命令 4 将用户添加到用户组 5 查看磁盘空间大小及使用情况 6 统计文件大小 6. ...

最新文章

  1. 在win ce中如何使正在运行的软件自动升级更新
  2. ArrayList 扩容
  3. ABAP maintenance view event handling
  4. Association, Composition and Aggregation in UI5, CRM, S/4HANA and C4C
  5. 589-N叉树的前序遍历
  6. 终端模拟器编译c语言,编写你自己的Terminal emulator
  7. notepad怎么运行php程序,notepad怎么运行php程序
  8. 尤雨溪介绍 Vue 3:语法不变、TS 支持很好、2.0 系列还会发一个版本
  9. 推理集 —— 现象与观察
  10. java netty rpc框架_Java编写基于netty的RPC框架
  11. Phaserjs基础教程第二节:加载图片、文字和动画
  12. 哔哩哔哩助手V0.8.16.28
  13. Android TextView 字体颜色渐变
  14. 2019-05-23 嗅探工具;影音嗅探;IRIS嗅探器;
  15. centos7.2php,Centos7.2之phpadmin安装配置
  16. iOS自动化-iOS录屏xrecord及解决iPhone设备不显示的问题
  17. ICCV 2021 Oral | Paint Transformer - 基于笔触预测的快速油画渲染算法
  18. 基于OpenCV的实时车道线分割&车道保持系统(源码&教程)
  19. 使用python3.7.2 实现大名鼎鼎的Elo Score等级分制度 CSGO段位机制
  20. Java从接触到放弃(二十一)--网络编程

热门文章

  1. 常见荧光染料修饰多种基团及其激发和 发射波长数据一览数据
  2. 忠魁互联优化:头条SEO全网搜索营销怎么做?
  3. RH Timer pro for Mac(定时计时器软件)
  4. 天气预报接口应该怎么开通?
  5. win10小娜_win10小娜不好用,想禁用或彻底删除Cortana,就用这2招
  6. 天线3db波束宽度_波束宽度
  7. 世纪互联评测至强5500 总结云平台经验
  8. 易经64卦富含的人生哲理
  9. workman定时器使用
  10. 大数据四大阵营之OLTP阵营(上)