[发明专利]一种数据同步方法及装置在审
申请号: | 201410336348.8 | 申请日: | 2014-07-15 |
公开(公告)号: | CN105320680A | 公开(公告)日: | 2016-02-10 |
发明(设计)人: | 郭义华;许利群;陈佳科;常耀斌;高飞 | 申请(专利权)人: | 中国移动通信集团公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 李睿;姚开丽 |
地址: | 100032 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 同步 方法 装置 | ||
技术领域
本发明涉及数据业务领域,尤其涉及一种数据同步方法及装置。
背景技术
信息系统建设通常具有阶段性和分布性的特点,这就导致“信息孤岛”现象的存在。“信息孤岛”是指不同软件间,尤其是不同部门间的数据信息不能共享,造成系统中存在大量冗余数据、垃圾数据,无法保证数据的一致性,严重地阻碍了企业信息化建设的整体进程。为解决这一问题,人们开始关注数据集成研究。数据集成与同步就是将若干个分散的数据源中的数据,逻辑地或物理地集成到一个统一的数据集合中。数据集成的核心任务是要将互相关联的分布式异构数据源集成到一起,使用户能够以透明的方式访问这些数据源。
为了实现数据集成与同步,相关技术的基本思想是通过各种方式(从日志、从应用、从源端库触发)获取源端数据库变化,这些变化通过sql语句或者jms、xml等格式传输到目的端数据表中执行。
可以看出,相关技术在处理源端单个表的数据同步到目的端单个表,特别是源端和目的端表结构一致的情况下,能实现数据同步,但是,由于实际的数据同步远非这样简单,比如源端多表关联后的数据同步到目的端一个表、数据在中间过程需要各类转换、为适应结构的变化需要重新修改同步代码等,因此,相关技术并不适用于源端多个表相关联的数据同步数据到目的端一个表的情况。
发明内容
有鉴于此,为解决现有存在的技术问题,本发明实施例提供:
一种数据同步方法,源端包括一个以上相关联的数据表,该方法包括:
从多个关联表中获取源端变化数据;
对所述获取的源端变化数据进行转换;
根据转换后的数据获取变更操作到目的端执行,从而实现数据同步。
优选的,所述从多个关联表中获取源端变化数据之前,该方法还包括:
根据源端表间关联关系建立视图,从关联的多个源端表中确定一主表,其他源端表为从表,主表的主键为所述多个关联的源端表的主键;
根据所述视图的结构建立记录数据变化的源端变化记录表;
分别建立各源端表的触发器。
优选的,所述获取源端数据,包括:
各源端表的触发器在所述源端表发生变化时,将相应的变化数据触发到所述源端变化记录表。
优选的,所述源端表的触发器在所述源端表发生变化时,将变化数据触发到所述源端变化记录表,包括:
当源端表发生插入操作时,判断本条数据变化是否满足关联条件,如果是,从关联的源端表中查询获取相应的列的数据,并插入到源端变化记录表;
当源端表发生删除操作且所述源端表为主表时,把所述源端表的主键信息记录到源端变化记录表;当源端表发生删除操作且所述源端表为从表时,根据表间关联关系查询出所述源端表对应主表的主键,并将所述主键信息记录到源端变化记录表;
当源端表发生更新操作且变化的列是需要同步的列,则先执行删除操作,之后判断本条数据变化是否满足关联条件,如果满足,从关联的源端表中查询获取相应的列的数据插入到源端变化记录表。
优选的,该方法还包括建立中间表、目标变化记录表以及中间表的触发器,所述对所述获取的源端变化数据进行转换,包括:
根据源端变化记录表数据生成相应的SQL语句;
在所述中间表上执行所述SQL语句时,所述中间表上建立的触发器调用字典转换函数和/或数据库常规函数进行数据的字典转换和/或类型转换。
优选的,该方法还包括:
根据同步模板和配置信息,获取同步代码;
根据所述同步代码实现数据同步。
优选的,该方法还包括,根据以下一项或多项获取配置信息:
源端数据库和目的端数据库的链接信息;
源端表间的关联关系;
源端和目的端的列对应关系;
源端和目的端的字典对应关系。
一种数据同步装置,包括:第一获取模块、转换模块和第二获取模块;其中,
所述第一获取模块,用于从多个关联表中获取源端变化数据,其中,源端包括一个以上相关联的数据表;
所述转换模块,用于对所述获取的源端变化数据进行转换;
所述第二获取模块,用于根据转换后的数据获取变更操作到目的端执行,实现数据同步。
优选的,该装置还包括建立模块,
所述建立模块,用于根据源端表间关联关系建立视图,从关联的多个源端表中确定一主表,其他源端表为从表,主表的主键为所述多个关联的源端表的主键;以及根据所述视图的结构建立记录数据变化的源端变化记录表;以及分别建立各源端表的触发器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团公司,未经中国移动通信集团公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410336348.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据库内容合并方法及装置
- 下一篇:一种跳跃式三维全景地图WEB浏览方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置