[发明专利]一种带自增量标识的分布式数据库同步方法有效
申请号: | 201510048091.0 | 申请日: | 2015-01-29 |
公开(公告)号: | CN104573100B | 公开(公告)日: | 2017-11-14 |
发明(设计)人: | 吴利;何曼;贾家涛;韩爱芳 | 申请(专利权)人: | 无锡江南计算技术研究所 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京众合诚成知识产权代理有限公司11246 | 代理人: | 龚燮英 |
地址: | 214083 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 增量 标识 分步 数据库 同步 方法 | ||
技术领域
本发明涉及一种带自增量标识的分布式数据库同步方法。
背景技术
随着信息系统的日趋规模化、区域化,分布式数据库在信息系统中所承担的数据桥梁作用越来越重要,分布式数据库的设计在系统中的应用日渐广泛。然而,由于系统的自身特点以及对系统的不同要求,在设计分布式数据库系统的过程中,仍有许多需要研究和解决的问题。其中最重要的问题之一就是如何保证分布式数据库的数据同步,以确保整个系统数据的一致性和安全性。
在分布式数据库系统中,广泛使用了数据复制技术进行数据复制和传输,从而达到数据同步的目的。几乎所有的大型数据库系统都提供了自己的数据复制解决方案和数据复制组件,如基于发布/订阅模型的数据复制技术。按数据复制的内容方法分类,可以分为表复制、事务复制等等。进行复制的基本条件都需要有一定的网络资源,要求有可靠的网络传输。如果是表复制等需要复制较多数据时,还要求有较高的传输速度。
除通过数据复制进行数据同步外,还有基于Oracle行级安全策略的数据同步更新机制、基于Oracle只读实体化视图的数据异步更新机制、基于Oracle可更新实体化视图的数据同步更新机制、基于代理的数据库远程数据同步解决方案。
上述方案中,分布式数据库的同步更新对网络和数据库的安全性要求较高,高度依赖于系统和网络的可用性。如果网络和系统出现故障,则任何更新都不能执行且不能进行异构数据库的数据同步。而基于Oracle只读实体化视图等异步更新方法又会存在一系列数据冲突问题。相比较于集中式数据库系统,很多常见的解决数据冲突的技术,难以在分布式数据库系统中应用。
自增量标识一致性问题:在集中式数据库系统中经常会利用自增量标识来构建表的主键,这样应用程序不用考虑标识的唯一性维护问题,数据库会根据规则自动维护各个表的标识号。但在分布式数据库系统中就无法利用该方法来构建唯一标识了,各站点数据库按各自的自增规则产生的标识肯定会重复。
表的唯一性约束问题:在集中式数据库系统中经常会基于一个或多个字段构建表的唯一性约束条件,这样可以简化应用程序的唯一性判别流程,数据库会根据规则在插入数据前自动判别数据是否满足唯一性约束条件。同样的,在分布式数据库系统中也无法利用该方法来进行唯一性判别,虽然数据在站点数据库中是可以保证唯一性的,但在中心数据库中合并时就有可能引发冲突。
多源数据更新问题:在集中式数据库系统中,数据信息实时更新,均为用户提交的最新信息。在分布式数据库离线同步过程中,如果遇到多个站点对同一个数据源进行更新,采用哪个站点数据更新中心数据库,则需要制定相应的规则。
当然为解决自增量标识一致性问题,可以弃用数据库自增量标识,在中心数据库中定义一个专门用于维护所有表的自增量标识的表,由该表用来存放所有需要唯一标识的表名称和当前所使用的ID值。然后写一个存储过程,专门用来从该表中取ID值。但此方法也存在相应的缺陷:①效率低,每次取ID值都需要调用存储过程从数据库中检索一次。②并发访问存在风险,多条数据同时存储时无法保证标识唯一。
发明内容
本发明所要解决的技术问题是针对现有技术中存在上述缺陷,提供一种带自增量标识的分布式数据库同步技术,解决在分布式数据库异步更新过程中遇到的自增量标识一致性问题、表的唯一性约束问题和多源数据更新问题。
根据本发明,提供了一种带自增量标识的分布式数据库同步方法,其中分布式数据库系统由中心数据库和多个站点数据库组成,包括:
第一步骤,用于对将要导出第一数据库的业务数据的业务数据表进行分析以获取表结构和关联关系;
第二步骤,用于根据第一步骤获取的表结构和关联关系,获取业务相关数据集合,将需要分发或上传的业务数据以预定数据存储格式分离或标识出来;
第三步骤,用于对将要导入第二数据库的业务数据的业务数据表进行分析以获取表结构和关联关系;
第四步骤,用于分析第一步骤获取到的业务数据表结构和关联关系,以及分析第三步骤获取到的业务数据表结构和关联关系,并结合第二步骤获取到的业务相关数据集,确定业务数据的导入顺序,并根据业务数据的导入顺序控制业务数据的依次导入。
优选地,第二步骤获取的业务相关数据集合包括与业务数据相关的总表与分表的自增量标识的对应关系。
优选地,所述的带自增量标识的分布式数据库同步方法还包括:第五步骤,用于在第一数据库和第二数据库的业务数据表结构异构的情况下,根据将业务数据按预定格式要求进行转换。
优选地,第一数据库是中心数据库和站点数据库中的一个。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于无锡江南计算技术研究所,未经无锡江南计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510048091.0/2.html,转载请声明来源钻瓜专利网。