[发明专利]一种数据库同步方法及装置有效
申请号: | 201210011419.8 | 申请日: | 2012-01-13 |
公开(公告)号: | CN102426611A | 公开(公告)日: | 2012-04-25 |
发明(设计)人: | 李擎梁 | 申请(专利权)人: | 广州从兴电子开发有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 逯长明 |
地址: | 510000 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 同步 方法 装置 | ||
技术领域
本发明涉及数据库领域,尤其涉及一种数据库同步方法及装置。
背景技术
数据库是存储在一起的相关数据的集合,这些数据是结构化的,并为多种应用服务。按照不同的标准,可以将数据库进行分类,例如IBM的Informix数据库和ORACLE的TimesTen数据库。而这些不同的类型的数据库之间是没有同步接口的,所以如果要同步不同类型数据库的内容,一般需要采用以下方式:以将Informix同步到TimesTen为例,首先需要维护人员导出Informix中的数据,然后将导出的数据按照TimesTen数据的格式,转化为能够插入TimesTen数据库的使用结构化查询语言(Structured Query Language,SQL)做成的语句,最后将原有的TimesTen数据库中的内容清空,插入组成的SQL语句,完成更新。
以上数据库同步中导出数据、生成SQL、清空数据库及插入SQL语句的过程之间不能连贯进行,而都需要人为的参与,所以,现有的数据库同步方法涉及的手工环节多,容易出错,所以导致同步的准确性低。
发明内容
有鉴于此,本发明提供了一种数据库同步方法及装置,目的在于解决现有的数据库同步方法因手工环节多而导致的同步准确性低的问题。
一种数据库同步方法,用于将第一数据库的内容同步到第二数据库中,包括:
建立与所述第二数据库对应的哈希表,所述哈希表中的每个关键字-哈希值对与所述第二数据库中的每条数据一一对应;
获取所述第一数据库中的数据对应的关键字;
当所述第一数据库中数据对应的关键字包含在所述哈希表中时,利用与所述关键字对应的哈希值比较所述第一数据库中与所述关键字对应的数据和第二数据库中与所述关键字对应的数据是否相同,若不相同,则将所述第一数据库中与所述关键字对应的数据同步到所述第二数据库中。
优选地,所述建立与所述第二数据库对应的哈希表包括:
获取所述第二数据库中每条数据对应的关键字,并将所述数据的内容作为与所述关键词对应的哈希值;
将所述关键字及与其对应的哈希值作为关键字-哈希值对,存储到预设表中,作为与所述第二数据库对应的哈希表。
优选地,所述将第一数据库中与所述关键字对应的数据同步到所述第二数据库中包括:
将所述第一数据库中与所述关键字对应的数据使用由结构化查询语言组成的语句写入到所述第二数据库中。
优选地,所述方法还包括:
当所述第一数据库中数据对应的关键字不包含在所述哈希表中时,则将第一数据库中所述关键字对应的数据插入到所述第二数据库中。
优选地,所述方法还包括:
当所述哈希表中的关键字不包含在所述第一数据库中数据对应的全部关键字中时,删除所述第二数据库中所述关键字对应的数据。
优选地,在所述建立与所述第二数据库对应的哈希表之前,还包括:
将所述第一数据库中的数据和所述第二数据库中的数据转换为相同的格式。
一种数据库同步装置,包括:
哈希表创建模块,用于建立与所述第二数据库对应的哈希表,所述哈希表中的每个关键字-哈希值对与所述第二数据库中的每条数据一一对应;
关键字获取模块,用于获取所述第一数据库中的数据对应的关键字;
同步模块,用于当所述第一数据库中数据对应的关键字包含在所述哈希表中时,利用与所述关键字对应的哈希值比较所述第一数据库中与所述关键字对应的数据和第二数据库中与所述关键字对应的数据是否相同,若不相同,将所述第一数据库中所述关键字对应的数据同步到所述第二数据库中。
优选地,所述装置还包括:
新数据插入模块,用于当所述第一数据库中数据对应的关键字不包含在所述哈希表中时,则将第一数据库中所述关键字对应的数据插入到所述第二数据库中。
优选地,所述装置还包括:
删除模块,用于当所述哈希表中的关键字不包含在所述第一数据库中数据对应的全部关键字中时,删除所述第二数据库中所述关键字对应的数据。
优选地,所述装置还包括:
格式转换模块,用于将所述第一数据库中的数据和所述第二数据库中的数据转换为相同的格式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州从兴电子开发有限公司,未经广州从兴电子开发有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210011419.8/2.html,转载请声明来源钻瓜专利网。