[发明专利]源数据库和目的数据库之间数据同步的方法、装置及系统无效
申请号: | 200910236502.3 | 申请日: | 2009-10-23 |
公开(公告)号: | CN101697169A | 公开(公告)日: | 2010-04-21 |
发明(设计)人: | 丁奇鹏 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京银龙知识产权代理有限公司 11243 | 代理人: | 许静 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 目的 之间 数据 同步 方法 装置 系统 | ||
技术领域
本发明涉及数据库领域,特别是指一种源数据库和目的数据库之间数据同步的方法、装置及系统。
背景技术
自从1970年E.F.Codd博士提出最初的理论模型以来,关系型数据库已经成为所有信息系统中必不可少的基础设施之一,其重要性仅次于操作系统,如今已经没有哪个大型的系统能够脱离数据库而存在。
在实际应用中,由于业务逻辑的复杂性和功能的模块化设计,往往一个信息系统中会部署有多套数据库,而且这多套数据库之间需要协同合作共享数据,这就要求各数据库之间能够实现数据同步。为了实现这个目标,各主流数据库厂商都推出了自己的数据同步技术,如Oracle(甲骨文系统有限公司)的Streams、Sybase(赛贝斯软件有限公司)的Replication Server等,其基本原理如图1所示,抓取源数据库的redo log(数据库日志)中的LCR(Logical ChangeRecord,逻辑变化记录),然后到目的数据库上按照LCR发生的顺序一条条进行应用,从而实现目的库数据与源库数据一致。
LCR是数据库界对数据库变动记录的通称。一条LCR体现了源数据库中一条特定记录上的一次特定DML(数据库操作语言)操作,其中内容包含了:操作类型、变动字段列表、字段变化前值、字段变化后值、主键字段名、主键字段值等,依据这些信息,就可以将这个DML操作复现。
当前数据同步技术有以下缺点:
源数据库将所有变动的LCR都一条不少地传往目的数据库,当源数据库变动很频繁时,传输LCR的工作量比较大。
发明内容
本发明要解决的技术问题是提供一种源数据库和目的数据库之间数据同步的方法、装置及系统,能够节省目的数据库的资源。
为解决上述技术问题,本发明的实施例提供技术方案如下:
一方面,提供一种源数据库和目的数据库之间数据同步的方法,包括:
同步装置从源数据库获取至少一个第一逻辑变化记录LCR及所述第一逻辑变化记录的关键字;
所述同步装置判断其自身是否存在第二LCR,所述第二LCR的关键字与所述第一LCR的关键字相同,生成判断结果;
所述同步装置根据所述判断结果,对所述第一LCR进行处理,生成处理后的LCR,使得所述同步装置仅存储一条包含所述第一LCR的关键字的LCR;
所述同步装置将所述处理后的LCR发送给目的数据库。
可选的,所述同步装置根据所述判断结果,对所述第一LCR进行处理,生成处理后的LCR的步骤包括:
当所述判断结果为是时,所述同步装置根据所述第一LCR的操作类型和所述第二LCR的操作类型,对所述第一LCR和所述第二LCR进行归并,生成处理后的LCR;
当所述判断结果为否时,所述同步装置在其自身存储所述第一LCR,作为处理后的LCR。
所述同步装置根据所述第一LCR的操作类型和所述第二LCR的操作类型,对所述第一LCR和所述第二LCR进行归并,生成处理后的LCR的步骤具体为:
当所述第一LCR的操作类型为插入,并且所述第二LCR的操作类型为插入或者更新时,将所述第二LCR作为所述处理后LCR;或者
当所述第一LCR的操作类型为插入,并且所述第二LCR的操作类型为删除时,将所述第二LCR的类型改为更新,并将第一LCR的各字段值覆盖到第二LCR的相应字段值上,生成所述处理后LCR;或者
当所述第一LCR的操作类型为更新类型,并且所述第二LCR的操作类型为插入或更新时,将所述第一LCR中的各字段值覆盖到所述第二LCR的相应字段值上,生成所述处理后LCR;或者
当所述第一LCR的操作类型为更新或删除,并且所述第二LCR的操作类型为删除类型时,将所述第二LCR作为所述处理后LCR;或者
当所述第一LCR的操作类型为删除,并且所述第二LCR的操作类型为插入时,则将所述第一LCR作为所述处理后LCR;或者
当所述第一LCR的操作类型为删除,并且所述第二LCR的操作类型为更新时,则将所述第二LCR类型修改为删除,作为所述处理后LCR。
所述同步装置将所述处理后的LCR发送给目的数据库的步骤为:
所述同步装置以批量绑定的方式,将所述处理后的LCR发送给目的数据库。
所述同步装置以批量绑定的方式,将所述处理后的LCR发送给目的数据库的步骤为:
当所述处理后的LCR的数量达到预定阈值时,所述同步装置以批量绑定的方式,将所述处理后的LCR发送给目的数据库;或
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200910236502.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:起重机双梁腹板定位设备
- 下一篇:用于加工电路板的热风整平机
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置