This application discloses a method and device for database merging, which includes: obtaining target data tables and source data tables from target and source databases, respectively. The target data tables include multiple fields and multiple records, and the source data tables also include multiple fields and multiple records, each record includes field values corresponding to the fields, respectively, according to the data table. The field differences between the target data table and the source data table are processed in the same structure to obtain the same structured target data table, and the data are merged on the basis of the source data table and the same structured target data table. Through the above method, the application can realize the rapid merging of the database and improve the merging method of the existing technology.
【技术实现步骤摘要】
【国外来华专利技术】一种数据库合并的方法以及装置
本申请涉及到数据库领域,特别是涉及一种数据库合并的方法以及装置。
技术介绍
数据库由于具有高负载、高响应、多并发、支持原子操作、支持多版本控制等优良性能,已成为数据存储的首选方式。现今许多软件和网站,上至云计算中心、下至即时聊天软件,都使用数据库来存储数据。在使用数据库的过程中,常常需要使用一个源数据库去更新一个目标数据库。而此时,便需要将数据库合并。另外,还有其他需要整合数据时,也需要将数据库合并。常见的合并数据库通常由数据库维护人员手动完成。维护人员分别导出要合并的两个数据库,以某种视图打开,再借助其他的比较工具来合并数据库,自动化程度比较低下。某些商业数据库可能会提供关联的合并工具,但仅仅适用于其相关的数据库产品。而且由于一些关系式数据库作为免费软件,开发者也并未提供相关工具,所以该合并工具无法应用在一些关系式数据库的场合。还有某些数据库服务厂商,通常倾向于提供整套数据库服务,索取高昂的服务费。相应地,此类产品通常也是庞大臃肿、反应迟缓、难于维护。
技术实现思路
本申请提供一种数据库合并的方法以及装置,通过轻量化的方法对数据库进行快速且安全的合并。本申请采用的一个技术方案是:提供一种数据库合并的方法,包括步骤:分别从目标数据库和源数据库获取目标数据表和源数据表,其中所述目标数据表包括多个字段以及多条记录,所述源数据表也包括多个字段以及多条记录,每条记录包括分别与所述字段对应的字段值;根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行同结构化处理,以获取同结构化目标数据表;在所述源数据表和所述同结构化目标数据表的基 ...
【技术保护点】
1.一种合并数据库的方法,其特征在于,包括如下步骤:分别从目标数据库和源数据库获取目标数据表和源数据表,其中所述目标数据表包括多个字段以及多条记录,所述源数据表也包括多个字段以及多条记录,每条记录包括分别与所述字段对应的字段值;根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行同结构化处理,以获取同结构化目标数据表;在所述源数据表和所述同结构化目标数据表的基础上进行数据合并。
【技术特征摘要】
【国外来华专利技术】1.一种合并数据库的方法,其特征在于,包括如下步骤:分别从目标数据库和源数据库获取目标数据表和源数据表,其中所述目标数据表包括多个字段以及多条记录,所述源数据表也包括多个字段以及多条记录,每条记录包括分别与所述字段对应的字段值;根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行同结构化处理,以获取同结构化目标数据表;在所述源数据表和所述同结构化目标数据表的基础上进行数据合并。2.根据权利要求1所述的方法,其特征在于,所述分别从目标数据库和源数据库获取目标数据表和源数据表的步骤包括:分别对所述目标数据库和所述源数据库所存储的表格的表名进行遍历,并将所述表名对应且分别存储于所述目标数据库和所述源数据库中的表格作为所述目标数据表和所述源数据表。3.根据权利要求1所述的方法,其特征在于,所述根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行同结构化处理的步骤包括:根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行字段添加和/或字段删除,以获得所述同结构化目标数据表,其中所述同结构化目标数据表中的字段与所述源数据表中的字段相同。4.根据权利要求3所述的方法,其特征在于,所述根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行同结构化处理的步骤还包括:对所述同结构化目标数据表进行记录填充,以使得在所述同结构化目标数据表中保留所述目标数据表的记录中与所述同结构化目标数据表字段相同的字段值,且所述同结构化目标数据表的记录中的其余字段所对应的字段值由所述源数据表中的对应记录的对应字段的字段值填充。5.根据权利要求4所述的方法,其特征在于,所述根据所述目标数据表和所述源数据表的字段差异对所述目标数据表进行字段添加和/或字段删除的步骤包括:分别对所述目标数据表和所述源数据表中的字段进行遍历,以确定所述目标数据表相对于所述源数据表缺少的字段和多余的字段;建立一临时表并进行字段设置,以使得所述临时表相对于所述目标数据表增加了所述缺少的字段并删除所述多余的字段;所述对同结构化目标数据表进行记录填充的步骤包括:将所述目标数据表的记录中与所述临时表相同字段的字段值填充到所述临时表中,并将所述临时表的记录中与所述目标数据表不同的字段所对应字段值由所述源数据表中对应记录的对应字段的字段值进行填充;将所述临时表设置为所述同结构化目标数据表。6.根据权利要求1所述的方法,其特征在于,所述在同结构化目标数据表和所述源数据表的基础上进行数据合并的步骤包括:将所述同结构化目标数据表与所述源数据表的记录中起到标识作用的标识字段所对应的字段值进行对比,以确定所述同结构化目标数据表相对于所述源数据表缺少的记录和/或多余的记录;在所述同结构化目标数据表中添加所述缺少的记录和和/或删除所述多余的记录。7.根据权利要求1所述的方法,其特征在于,所述在同结构化目标数据表和所述源数据表的基础上进行数据合并的步骤包括:将所述同结构化目标数据表与所述源数据表的记录中的字段值进行对比,以确定起到标识作用的标识字段所对应的字段值相同但其余字段所对应的字段值至少部分不同的记录;利用所述源数据表中确定的所述记录更新所述同结构化目标数据表中的对应记录。8.根据权利要求1所述的方法,其特征在于,所述在同结构化目标数据表和所述源数据表的基础上进行数据合并的步骤包括:将所述同结构化目标数据表中的记录全部替换成所述源数据表中的记录。9.根据权利要求1所述的方法,其特征在于,所述在同结构化目标数据表和所述源数据表的基础上进行数据合并的步骤包括:在所述同结构化目标数据表中指定受保护记录或受保护字段;在跳过所述受保护记录或受保护字段的基础上对所述同结构化目标数据表和所述源数据表进行数据合并。10.根据权利要求1所述的方法,其特征在于,所述在同结构化目标数据表和所述源数据表的基础上进行数据合并的步骤包括:利用第一线程循环地从所述源数据表中读取记录,并存储到第一缓存区;利用第二线程循环地从所述第一缓存区中读取记录,并存储到第二缓存区,其中所述第一缓存区所存储的记录数量大于所述第二缓存区所存储的记录数量;利用第三线程循环地从所述同结构化目标数据表中读取记录,并存储到第三缓存区;利用第四线程循环地从第三缓存区读取记录,并写入第四缓存区,其中所述第三缓存区所存储的记录数量大于所述第四缓存区所存储的记录数量;利用第五线程对所述第二缓存区所存储的记录以及所述第四缓存区所存储的记录进行比较,并根据比较结果执行相应的数据合并操作。11.一种合并数据库的装置,其特征在于,所述装置包括:处理器、存储...
【专利技术属性】
技术研发人员:庞华冲,
申请(专利权)人:深圳配天智能技术研究院有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。