ETL增量单表同步简述_根据timestamp增量
ETL增量单表同步简述
1. 实现需求
当原数据库的表有新增、更新、删除操作时,将改动数据同步到目标库对应的数据表。
2. 设计思路
设计总体流程图如下:

步骤简单说明:
1、设置job的执行属性,如下图:

2、根据要同步的表名,更新同步配置表synConfig的endTime。

3、根据beginTime和endTime获取同步时间段。


4、、根据比较原表和目标表数据的差异性,进行删除目标表的数据。

6、更新提取的开始时间,将上次提取的结束时间更新到开始时间。

3. 必备条件
1、目标数据库的表结构与原数据库相同;
2、同步的表要有syncTime字段,且数据类型为timstamp。
4. 具体实现
4.1. 同步配置表设计
创建同步配置表synConfig,如图所示:

字段说明如下:
name:要同步的数据表名字。
beginTime:同步开始时间。
endTime:同步结束时间。
建表sql如下:
|
同步配置表synConfig建表sql |
|
create table synConfig( name varchar(200) not null, beginTime varbinary(100), endTime varbinary(100), constraint pk_synConfig primary key nonclustered (name) ); --修改原表,追加同步字段 alter table tableName add synTime(timestamp) |
4.2. 软件安装
1、Jdk
2、Kettle同步工具
说明:
kettle7版本要求jdk必须为1.8以上。
详细可参考官网:http://community.pentaho.com/projects/data-integration/
ETL增量单表同步简述_根据timestamp增量的更多相关文章
- ETL增量单表同步简述_根据dateTime增量
ETL增量单表同步简述 1. 实现需求 当原数据库的表有新增.更新.删除操作时,将改动数据同步到目标库对应的数据表. 2. 设计思路 设计总体流程图如下: 步骤简单说明: 1.设置job的执行属性,如 ...
- ETL全量单表同步简述
ETL全量单表同步简述 1. 实现需求 当原数据库的表有新增.更新.删除操作时,将改动数据同步到目标库对应的数据表. 2. 设计思路 设计总体流程图如下: 注意点: 1.数据库合并时,选择正确的数据源 ...
- Logstash学习之路(四)使用Logstash将mysql数据导入elasticsearch(单表同步、多表同步、全量同步、增量同步)
一.使用Logstash将mysql数据导入elasticsearch 1.在mysql中准备数据: mysql> show tables; +----------------+ | Table ...
- ETL全量多表同步简述
ETL全量多表同步简述 1. 实现需求 当原数据库的表有新增.更新.删除操作时,将改动数据同步到目标库对应的数据表. 2. 设计思路 设计总体流程图如下: 1.获取同步表名如下图: 2.循环迁移数据如 ...
- mysql 主从单库单表同步 binlog-do-db replicate-do-db
方案一:两边做主从. SELECT SUM(DATA_LENGTH)+SUM(INDEX_LENGTH) FROM information_schema.tables WHERE TABLE_SCHE ...
- KETTLE单表同步,写入EXCEL和TXT
以下操作都在5.0.1版本下进行开发,其余版本可以进行自动比对 在平时工作当中,会遇到这种情况,而且很常见.比如:1.自动生成文件TXT或者EXCEL(电信行业该需求居多),上传至某服务器:2.双方数 ...
- kettle实现同构单表增量同步
job如下: 如下转换:获取区服列表,将id列表保存到结果(内存) job: 同构数据库单表抽取(每个输入执行一次) 同构数据库单表抽取(job) 的具体实现如下: 转换:获取数据库连接ID 从结果获 ...
- CentOS6.4 配置mysql服务器启动多个端口,同步单表数据
============================================================ ====多端口启动==== ========================= ...
- SQL基本查询_单表查询(实验二)
SQL基本查询_单表查询(实验二) 查询目标表结构及数据 emp empno ename job hiedate sal comn deptno 1007 马明 内勤 1992-6-12 4000 2 ...
随机推荐
- 掌握Spark机器学习库-01
第1章 初识机器学习 在本章中将带领大家概要了解什么是机器学习.机器学习在当前有哪些典型应用.机器学习的核心思想.常用的框架有哪些,该如何进行选型等相关问题. 1-1 导学 1-2 机器学习概述 1- ...
- windows server 2008 r2 IIS7下网站配置 只允许指定的IP地址访问
步骤一.找到ip地址和域限制 步骤二.添加全部拒绝 步骤三.添加允许访问的ip地址(局域网填写局域网ip,公网填写公网ip) 步骤四:如果想要拒绝某些ip访问,直接在规则中添加拒绝条目就可以
- Linux下PPPoE Server测试环境搭建
1.1 服务器软件安装 安裝PPPoE Server 所需的软件: 安装ppp模块: sudo apt-get install ppp //一般默认下已安装 安装rp-pppoe,从网络上下载安 ...
- image和TFRecord互相转换
关说不练假把式.手上正好有车牌字符的数据集,想把他们写成TFRecord格式,然后读进来,构建一个简单的cnn训练看看.然后发现准确率只有0.0x.随机猜也比这要好点吧.只能一步步检查整个过程.暂时想 ...
- 面包屑 asp代码记录 newsmulu_class 内部函数
'id 这里其实是 classId 'mbStr1 最右边的栏目模板 由于是当前本页面 就不带链接了 建议默认值:<span class='mbxC'>$title</span> ...
- django显示图片
dirctory vickey_django vickey(projectname) vickey __init__.py __pycache__ settings.py urls.py wsgi.p ...
- tinyxml
在TinyXML中,根据XML的各种元素来定义了一些类: TiXmlBase:整个TinyXML模型的基类. TiXmlAttribute:对应于XML中的元素的属性. ...
- vue 封装自定义组件
组件结构 sjld >index.js >sjid.vue 最好单独放一个文件夹,有依赖的话装依赖 Sjld.vue 内容 <template id="sjld" ...
- 「 Luogu P3137 」X 「 USACO16FEB 」 圆形谷仓
# 题目大意 管理大大给修下 $\text{Markdown}$ 吧,严重影响做题体验啊. 这道题的意思很简单就是给你一个长度是 $n$ 的环,这个环上不均匀的分布着 $n$ 头奶牛.一头奶牛移动要花 ...
- 【2018 1月集训 Day1】二分的代价
题意: 现在有一个长度为 n的升序数组 arr 和一个数 x,你需要在 arr 中插入 x. 你可以询问 x 跟 arri 的大小关系,保证所有 arri 和 x 互不相同.这次询问的代价为 cost ...