度量快速开发平台-专业、快速的软件定制快开平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 部件 流程 SQL
查看: 1156|回复: 6
打印 上一主题 下一主题

[分享] 愚公oracle数据库同步工具

[复制链接]

235

主题

2547

帖子

5835

积分

论坛元老

Rank: 8Rank: 8

积分
5835
跳转到指定楼层
楼主
发表于 2020-5-28 14:13:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
1.yugong实时同步原理
   使用了oracle的物化视图日志功能,类似于一个内部的触发器,原表的数据库需要对用户授权具有物化视图日志的创建和删除权限,关于物化视图日志的详细描述,可以参考下面的文章:
2.性能测试
   a.在测试环境1的原表(TEST_SOURCE)新生成300万数据
   b.为不影响开发环境的数据,修改yugong代码,将目标表改为TEST_SOURCE_BAK
   c.启动yugong服务,开始同步数据
   d.经过1.5小时,同步完所有增量数据
3.数据延时测试
  a.分别手动对原表数据进行了增改删操作,10秒钟内可以实现数据同步
  b.在目标库中新增一列,类型为时间类型,默认值为当前时间
  c.使用脚本反复在原库中生成一批数据(50条为一批)
  d.所有数据的延迟时间都在30秒以内
4.数据完整性测试
  a.手工随机抽查数据,对比同一条记录的各个列值,数据都是一致的
  b.使用jdbc抽出特定的记录集合,使用md5函数,md5结果一致
5.其它测试用例
  a.原表增加字段,而目标表不增加,数据正常同步
  b.目标表先增加字段,原表不增加字段,数据正常同步
  c.原表和目标表同时增加字段,服务需要重新启动后才可以进行数据同步
  d.无主键测试,yugong不支持无主键同步
  e.主键为多列测试,可以正常同步
  f.yugong服务连续运行72个小时,中间出现过一次同步中断,原因不明
  g.物化视图日志在事务中rollback时,会同步rollback
  h.目标表将某条记录删除,原表将此记录更新,此记录会重新同步到目标表
6.yugong分析
  a.代码简洁,分为extractor(提取)、translator(翻译)、applier(更新到目标库)三个部分
  b.只有一个服务,无其它第三方依赖
  c.原理简单,可以按照我们的意图来更改代码

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

235

主题

2547

帖子

5835

积分

论坛元老

Rank: 8Rank: 8

积分
5835
沙发
 楼主| 发表于 2020-5-28 14:17:11 | 只看该作者
回复

使用道具 举报

542

主题

5916

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
板凳
发表于 2020-5-28 17:39:10 | 只看该作者
回复 支持 反对

使用道具 举报

141

主题

1551

帖子

3573

积分

论坛元老

Rank: 8Rank: 8

积分
3573
地板
发表于 2020-5-28 18:13:43 | 只看该作者
回复 支持 反对

使用道具 举报

235

主题

2547

帖子

5835

积分

论坛元老

Rank: 8Rank: 8

积分
5835
5#
 楼主| 发表于 2020-5-29 14:48:23 | 只看该作者
回复 支持 反对

使用道具 举报

235

主题

2547

帖子

5835

积分

论坛元老

Rank: 8Rank: 8

积分
5835
6#
 楼主| 发表于 2020-5-29 14:49:19 | 只看该作者
回复 支持 反对

使用道具 举报

542

主题

5916

帖子

1万

积分

作者

Rank: 7Rank: 7Rank: 7

积分
13589
7#
发表于 2020-5-30 14:52:56 | 只看该作者
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|重庆度量科技  本站关键词:快速开发平台

GMT+8, 2024-11-28 12:04 , Processed in 0.120273 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表