数据库同步方法、装置、计算机设备及可读存储介质与流程

文档序号:24427966发布日期:2021-03-26 23:29阅读:77来源:国知局
1.本发明涉及大数据的数据处理
技术领域
:,尤其涉及一种数据库同步方法、装置、计算机设备及可读存储介质。
背景技术
::2.在it系统的建设过程中,伴随设计和需求的不断迭代,数据库结构以及配置文件不断升级更新,对于同一个应用,代码在进化,数据库元数据信息在进化,配置文件在进化;代码进化目前有比较成熟的代码管理工具git、svn,对与配置文件进化有成熟的配置中心系统(apollo等),但是,在数据库结构进化方面行业内无简单易用的工具。3.因此,发明人发现一旦某一数据库中的数据出现迭代、更新等情况时,需要投入大量的人工识别与所述数据库关联的待更新数据库,并将迭代、更新的数据添加至所述待更新数据库中,不仅投入的人力成本较高,而且还导致数据库同步的效率极大的降低。技术实现要素:4.本发明的目的是提供一种数据库同步方法、装置、计算机设备及可读存储介质,用于解决现有技术存在的投入大量的人工识别与所述数据库关联的待更新数据库,并将迭代、更新的数据添加至所述待更新数据库中,所导致的人力成本高,数据库同步的效率低的问题。5.为实现上述目的,本发明提供一种数据库同步方法,包括:6.识别目标数据库和原始数据库;7.从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据;8.对比所述目标数据和原始数据之间的差异得到差异数据;9.将所述差异数据载入预置的公式程序中获得同步脚本,通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步。10.上述方案中,所述识别目标数据库和原始数据库之前,所述方法还包括:11.所述数据库同步方法被设置为,响应于预置的触发周期或接收到控制端发送的同步信号。12.上述方案中,所述识别目标数据库和原始数据库的步骤,包括:13.若响应于所述触发周期,则通过预置的同步库表中,获取具有对应关系的待同步数据库,获取所述待同步数据库更新时间,将更新时间最接近当前时间的待同步数据库设为目标数据库,将除所述目标数据库外的待同步数据库设为原始数据库;14.若响应于所述控制端发送的同步信号,则获取所述同步信号中的库编号,并根据所述库编号识别系统中的待同步数据库;判断所述同步信号中是否具有目标指令;若是,则将与所述目标指令对应的待同步数据库设为目标数据库,并将其他的待同步数据库设为原始数据库;若否,则获取所述待同步数据库更新时间,将更新时间最接近当前时间的待同步数据库设为目标数据库,将除所述目标数据库外的待同步数据库设为原始数据库。15.上述方案中,所述从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据的步骤,包括:16.识别所述目标数据库中保存的目标存储数据,镜像所述目标存储数据得到目标数据,并从所述目标数据库中提取所述目标数据;识别所述原始数据库中保存的原始存储数据,镜像所述原始存储数据得到原始数据,并从所述原始数据库中提取所述原始数据;其中,所述镜像是指磁盘镜像,其为将一个存储装置里的数据,在另一个装置或以另一种格式制作的完整复制品。17.上述方案中,所述从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据之后,所述方法还包括:18.判断所述目标数据和所述原始数据的数据结构是否一致;若是,则判定所述目标数据和所述原始数据为同类数据;若否,则将所述原始数据的数据类型转为所述目标数据的数据结构,使所述原始数据与所述目标数据成为同类数据。19.上述方案中,所述将所述差异数据载入预置的公式程序中获得同步脚本之前,所述方法还包括:20.与控制端之间构建加密信道;21.所述通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步之前,所述方法还包括:22.将所述同步脚本通过所述加密信道发送至所述控制端,接收所述控制端根据所述同步脚本发送的执行信号;23.所述将所述差异数据载入预置的公式程序中获得同步脚本之后,所述方法还包括:24.将所述同步脚本上传至区块链中。25.上述方案中,所述通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步之后,所述方法还包括:26.提取所述目标数据库中的目标数据及所述原始数据库中的原始数据,验证所述目标数据和原始数据是否一致;若是,则判定所述目标数据库和所述原始数据库完成同步;若否,则生成报错报文,并将所述报错报文发送至所述控制端。27.为实现上述目的,本发明还提供一种数据库同步装置,包括:28.数据库识别模块,用于识别目标数据库和原始数据库;29.数据获取模块,用于从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据;30.差异对比模块,用于对比所述目标数据和原始数据之间的差异得到差异数据;31.数据同步模块,用于将所述差异数据载入预置的公式程序中获得同步脚本,通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步。为实现上述目的,本发明还提供一种计算机设备,其包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述计算机设备的处理器执行所述计算机程序时实现上述数据库同步方法的步骤。32.为实现上述目的,本发明还提供一种计算机可读存储介质,所述可读存储介质上存储有计算机程序,所述可读存储介质存储的所述计算机程序被处理器执行时实现上述数据库同步方法的步骤。33.本发明提供的数据库同步方法、装置、计算机设备及可读存储介质,通过从目标数据库中提取目标数据及从原始数据库中提取原始数据,并对比所述目标数据和所述原始数据之间的差异得到差异数据,将差异数据载入公式程序中以对公式程序中的变量数据进行赋值,使所述公式程序成为同步脚本的可执行文件,以便于控制端调用所述同步脚本使目标数据库和原始数据库进行同步,以自动实现目标数据库和原始数据库的同步操作,极大的提高了数据库同步效率,降低了人工查找并同步数据所造成的人力成本投入过大,效率较低的情况发生。附图说明34.图1为本发明数据库同步方法实施例一的流程图;35.图2为本发明数据库同步方法实施例二中数据库同步方法的环境应用示意图;36.图3是本发明数据库同步方法实施例二中数据库同步方法的具体方法流程图;37.图4为本发明数据库同步装置实施例三的程序模块示意图;38.图5为本发明计算机设备实施例四中计算机设备的硬件结构示意图。具体实施方式39.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。40.本发明提供的数据库同步方法、装置、计算机设备及可读存储介质,适用于大数据的数据处理
技术领域
:,为提供一种基于数据库识别模块、数据获取模块、差异对比模块、数据同步模块、触发模块、结构调整模块、信道构建模块、同步验证模块的数据库同步方法。本发明通过识别目标数据库和原始数据库,从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据,对比所述目标数据和原始数据之间的差异得到差异数据,将所述差异数据载入预置的公式程序中获得同步脚本。41.实施例一:42.请参阅图1,本实施例的一种数据库同步方法,包括:43.s102:识别目标数据库和原始数据库;44.s103:从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据;45.s105:对比所述目标数据和原始数据之间的差异得到差异数据;46.s107:将所述差异数据载入预置的公式程序中获得同步脚本,通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步。47.在示例性的实施例中,通过预置的同步库表中,获取具有对应关系的待同步数据库,获取所述待同步数据库更新时间,将更新时间最接近当前时间的待同步数据库设为目标数据库,将除所述目标数据库外的其他待同步数据库设为原始数据库。不仅精准的识别出需要同步的数据库,而且,由于更新时间最接近当前时间的待同步数据库存储的数据信息是最新、也可能是最全面的,并且其数据类型也是最符合当前系统的使用需要的,因此,将所述待同步数据库设为目标数据库,并将其他待同步数据库设为原始数据库,并使其在大概率上以所述目标数据库(尤其是目标数据库的数据类型)为准,是最有利于数据库同步操作开展的方式。48.识别所述目标数据库中保存的目标存储数据,镜像所述目标存储数据得到目标数据,并从所述目标数据库中提取所述目标数据;识别所述原始数据库中保存的原始存储数据,镜像所述原始存储数据得到原始数据,并从所述原始数据库中提取所述原始数据;其中,所述镜像是指磁盘镜像,其为将一个存储装置里的数据,在另一个装置或以另一种格式制作的完整复制品。49.通过提取目标数据中任一目标子数据,遍历所述原始数据中的原始子数据,并判断所述原始数据中是否具有与所述目标子数据一致的原始子数据,若否,则将所述目标子数据设为差异数据;同理,提取原始数据中任一原始子数据,遍历所述目标数据中的目标子数据,并判断所述目标数据中是否具有与所述原始子数据一致的目标子数据,若否,则将所述原始子数据设为差异数据。50.通过将差异数据载入公式程序中以对公式程序中的变量数据进行赋值,使所述公式程序成为同步脚本的可执行文件,以便于控制端调用所述同步脚本使目标数据库和原始数据库进行同步。其中,所述可执行文件(executablefile)指的是可以由操作系统进行加载执行的文件,其用于自动实现目标数据库和原始数据库的同步操作,极大的提高了数据库同步效率,降低了人工查找并同步数据所造成的人力成本投入过大,效率较低的情况发生。51.实施例二:52.本实施例为上述实施例一的一种具体应用场景,通过本实施例,能够更加清楚、具体地阐述本发明所提供的方法。53.下面,以在运行有数据库同步方法的服务器中,对其中的缓存器和数据库进行信息同步及返回口令识别对比所述目标数据和原始数据之间的差异得到差异数据,并将所述差异数据载入预置的公式程序中获得同步脚本为例,来对本实施例提供的方法进行具体说明。需要说明的是,本实施例只是示例性的,并不限制本发明实施例所保护的范围。54.图2示意性示出了根据本申请实施例二的数据库同步方法的环境应用示意图。55.在示例性的实施例中,数据库同步方法所在的服务器2通过网络3分别连接控制端4;所述服务器2可以通过一个或多个网络3提供服务,网络3可以包括各种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或等等。网络3可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,它们的组合和/或类似物。网络3可以包括无线链路,例如蜂窝链路,卫星链路,wi‑fi链路和/或类似物;所述控制端4可为智能手机、平板电脑、笔记本电脑、台式电脑等计算机设备。56.图3是本发明一个实施例提供的一种数据库同步方法的具体方法流程图,该方法具体包括步骤s201至s208。57.s201:响应于预置的触发周期或接收到控制端发送的同步信号。58.为实现数据库的实时同步,以及根据控制端的需求有针对性地同步,本步骤通过将所述数据库同步方法设置为响应于预置的触发周期以根据所述触发周期实时地对数据库进行同步,以及响应于控制端发送的同步信号,以根据控制端的需求进行有针对性的数据库同步。59.于本实施例中,所述触发周期可根据需要设置,例如:1分钟,1小时,12小时等。60.s202:识别目标数据库和原始数据库。61.本步骤中,若响应于所述触发周期,则通过预置的同步库表中,获取具有对应关系的待同步数据库,获取所述待同步数据库更新时间,将更新时间最接近当前时间的待同步数据库设为目标数据库,将除所述目标数据库外的待同步数据库设为原始数据库。62.若响应于所述控制端发送的同步信号,则获取所述同步信号中的库编号,并根据所述库编号识别系统中的待同步数据库;63.判断所述同步信号中是否具有目标指令;若是,则将与所述目标指令对应的待同步数据库设为目标数据库,并将其他的待同步数据库设为原始数据库;若否,则获取所述待同步数据库更新时间,将更新时间最接近当前时间的待同步数据库设为目标数据库,将除所述目标数据库外的待同步数据库设为原始数据库;64.于本实施例中,由于更新时间最接近当前时间的待同步数据库存储的数据信息是最新、也可能是最全面的,并且其数据类型也是最符合当前系统的使用需要的,因此,将所述待同步数据库设为目标数据库,并将其他待同步数据库设为原始数据库,并使其在大概率上以所述目标数据库(尤其是目标数据库的数据类型)为准,是最有利于数据库同步操作开展的方式。65.需要说明的是,所述同步库表保存了系统中数据库之间的对应关系所述对应关系表达了保存的信息应当一致的数据库对或数据库集合,例如:系统中包括数据库a、数据库b、数据库c和数据库d,如果数据库a和数据库b在同步库表中之间具有对应关系,则表达数据库a和数据库b中保存的数据应当一致;其中,所述对应关系可根据需要设置。66.s203:从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据。67.本步骤中,识别所述目标数据库中保存的目标存储数据,镜像所述目标存储数据得到目标数据,并从所述目标数据库中提取所述目标数据;识别所述原始数据库中保存的原始存储数据,镜像所述原始存储数据得到原始数据,并从所述原始数据库中提取所述原始数据;其中,所述镜像是指磁盘镜像,其为将一个存储装置里的数据,在另一个装置或以另一种格式制作的完整复制品。68.s204:判断所述目标数据和所述原始数据的数据结构是否一致;若是,则判定所述目标数据和所述原始数据为同类数据;若否,则将所述原始数据的数据类型转为所述目标数据的数据结构,使所述原始数据与所述目标数据成为同类数据。69.由于目标数据和原始数据的在所述目标数据库和原始数据库中的数据结构是不一致的,那么,如果将数据结构不一致的目标数据和原始数据进行直接比对,将会导致比对的结果是不准确的,例如:由于因数据结构不一致,导致目标数据中的子数据无法在原始数据中找到与其对应的子数据;为保证目标数据和原始数据对比的准确性,70.本步骤通过识别所述目标数据的数据结构及所述原始数据的数据结构,判断所述目标数据的数据结构及所述原始数据的数据结构是否一致;71.若是,则判定所述目标数据和所述原始数据为同类数据;72.若否,则从预置的结构转换规则集合中,获取以目标数据的数据结构为转换目标,以所述原始数据的数据结构为转换来源的结构转换规则,通过所述结构转换规则将所述原始数据的数据结构转换为所述目标数据的数据结构,使所述原始数据的数据结构与所述目标数据的数据结构一致,进而是所述原始数据和所述目标数据成为同类数据。73.示例性地,如果目标数据的数据结构是链表,原始数据的数据结构是数组,则判定链表为转换目标,数组为转换来源,调用预置的结构转换规则集合中的数组转链表规则对原始数据的数据结构进行转换,使原始数据的数据结构变为链表,例如:74.root=newlinknode(s[0]);//生成链表的根节点,并将数组的第一个元素的值赋给链表的根节点;[0075]linknodeother=root;//生成另一个节点,并让other指向root节点,other在此作为一个临时变量,other和root指向同一地址;[0076]ꢀꢀꢀꢀꢀꢀꢀꢀfor(inti=1;i<s.length;i++){//由于已给root赋值,所以i从1开始;[0077]linknodetemp=newlinknode(s[i]);//每循环一次生成一个新的节点,并给当前节点赋值;[0078]other.setnext(temp);//将other的下一个节点指向生成的新的节点;[0079]ꢀꢀꢀꢀꢀꢀꢀꢀother=temp;//将other指向最后一个节点(other的下一个节点)。[0080]ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ}[0081]于所述图3中,所述s204采用以下标注展示:[0082]s41:判断所述目标数据和所述原始数据的数据结构是否一致;[0083]s42:若是,则判定所述目标数据和所述原始数据为同类数据;[0084]s43:若否,则将所述原始数据的数据类型转为所述目标数据的数据结构,使所述原始数据与所述目标数据成为同类数据。[0085]s205:对比所述目标数据和原始数据之间的差异得到差异数据。[0086]为识别所述目标数据和原始数据之间的差异,本步骤通过提取目标数据中任一目标子数据,遍历所述原始数据中的原始子数据,并判断所述原始数据中是否具有与所述目标子数据一致的原始子数据,若否,则将所述目标子数据设为差异数据;同理,提取原始数据中任一原始子数据,遍历所述目标数据中的目标子数据,并判断所述目标数据中是否具有与所述原始子数据一致的目标子数据,若否,则将所述原始子数据设为差异数据。其中,所述目标子数据是组成所述目标数据的数据单元,于本实施例中,可将链表结构的目标数据中具有同一标题的数据集合设为一个目标子数据;同理,所述原始子数据是组成所述原始数据的数据单元,于本实施例中,可将链表结构的原始数据中具有同一标题的数据集合设为一个原始子数据。[0087]具体地,使用get函数提取目标数据中的目标子数据,并将其带入原始数据中以遍历所述原始数据中的原始子数据;判断所述原始数据中是否具有与所述目标子数据一致的原始子数据;若是,则判定所述目标子数据与所述原始子数据一致;若否,则判定所述目标子数据为差异数据。[0088]使用get函数提取原始数据中的原始子数据,并将其带入目标数据中以遍历所述目标数据中的目标子数据;判断所述目标数据中是否具有与与所述原始子数据一致的目标子数据;若是,则判定所述原始子数据与所述目标子数据一致;若否,则判定所述原始子数据为差异数据。[0089]s206:与所述控制端之间构建加密信道。[0090]为避免同步脚本被非法终端窃取,本步骤通过与控制端之间构建加密信道后,将所述同步脚本发送至所述控制端,以保证同步脚本的信息安全;[0091]于本实施例中,采用设置有加密保护协议的通信信道作为所述加密信道,基于所述加密保护协议的加密信道的工作原理是:在系统认证过程中,运行有数据库同步方法的服务器发送一个消息到控制端,控制端以进行自认证的消息响应所述服务器。控制端和服务器完成额外的会话密钥交换,结束整个认证会话过程。当认证完成后,在服务器与控制端使用在认证过程中建立的对称密钥的安全通信作为所述加密信道。[0092]具体的,采用tls和/或ssl作为加密保护协议,其中,ssl:(securesocketlayer,安全套接字层),位于可靠的面向连接的网络层协议和应用层协议之间的一种协议层。ssl通过互相认证、使用数字签名确保完整性、使用加密确保私密性,以实现客户端和服务器之间的安全通讯。该协议由两层组成:ssl记录协议和ssl握手协议。tls:(transportlayersecurity,传输层安全协议),用于两个应用程序之间提供保密性和数据完整性。该协议由两层组成:tls记录协议和tls握手协议。[0093]s207:将所述差异数据载入预置的公式程序中获得同步脚本,将所述同步脚本通过所述加密信道发送至所述控制端,接收所述控制端根据所述同步脚本发送的执行信号,根据所述执行信号通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步。[0094]为自动实现目标数据库和原始数据库的自动同步,本步骤通过将差异数据载入公式程序中以对公式程序中的变量数据进行赋值,使所述公式程序成为同步脚本的可执行文件,以便于控制端调用所述同步脚本使目标数据库和原始数据库进行同步;其中,所述同步脚本是用于将差异数据同步到不具有所述差异数据的目标数据库或原始数据库中,使所述目标数据和所述原始数据同步的可执行文件;所述可执行文件(executablefile)指的是可以由操作系统进行加载执行的文件。[0095]示例性地,原始数据包括原始子数据a、原始子数据b、原始子数据c,目标数据包括目标子数据a、目标子数据b和目标子数据d,依次提取原始子数据a、原始子数据b、原始子数据c并遍历所述目标数据,得到差异数据:原始子数据c;依次提取目标子数据a、目标子数据b和目标子数据d并遍历所述原始子数据,得到差异数据:目标子数据d;因此,得到差异数据:原始子数据c和目标子数据d。假设公式程序表达了:将差异数据赋值给变量a,再将所述变量a载入除所述差异数据来源外的数据库中;将原始子数据c赋值给变量a,识别除原始子数据c来源(即:原始数据库)外的其他数据表(即:目标数据库),将所述原始子数据c载入所述目标数据库中;将目标子数据d赋值给变量a,识别除目标子数据d的来源(即:目标数据库)外的数据库(即:原始数据库),将所述目标子数据d载入所述原始数据库中。[0096]优选的,所述将所述差异数据载入预置的公式程序中获得同步脚本之后,所述方法还包括:[0097]将所述同步脚本上传至区块链中。[0098]需要说明的是,基于同步脚本得到对应的摘要信息,具体来说,摘要信息由同步脚本进行散列处理得到,比如利用sha256s算法处理得到。将摘要信息上传至区块链可保证其安全性和对用户的公正透明性。用户设备可以从区块链中下载得该摘要信息,以便查证同步脚本是否被篡改。本示例所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。[0099]s208:提取所述目标数据库中的目标数据及所述原始数据库中的原始数据,验证所述目标数据和原始数据是否一致;若是,则判定所述目标数据库和所述原始数据库完成同步;若否,则生成报错报文,并将所述报错报文发送至所述控制端。[0100]为保证目标数据库和原始数据库的同步准确度,本步骤在生成同步脚本之后直接执行所述同步脚本,或经过预置的等待期间根据所述控制端发送的执行信号执行完所述同步脚本后,再提取所述目标数据库中的目标数据及所述原始数据库中的原始数据,验证所述目标数据和原始数据是否一致;若是,则判定所述目标数据库和所述原始数据库完成同步;若否,则生成报错报文,并将所述报错报文发送至所述控制端,以保证目标数据库和原始数据库的目标数据和原始数据同步的可靠性和准确度。[0101]于本实施例中,采用哈希算法对所述目标数据进行运算得到哈希值,及对所述原始数据进行哈希运算得到原始哈希值;判断所述目标哈希值和所述原始哈希值是否一致;若是,则判定所述目标数据和所述原始数据一致;若否,则判定所述目标数据和所述原始数据不一致。[0102]需要说明的是,所述哈希算法是把任意长度的输入(又叫做预映射pre‑image)通过散列算法变换成固定长度的输出,该输出的散列值即为哈希值。哈希算法产生的哈希值的长度是固定且有限的。例如,本实施例可采用md5,其输出的哈希值是固定的128位二进制串,能表示的数据是有限的,最多能表示2^128个数据。由于采用哈希算法对数据库中的数据进行运算得到哈希值的方式,因此,只要目标哈希值和原始哈希值一致,就可以认为目标数据和原始数据一致,保证了数据库同步验证的准确性,还因无需将原始数据和目标数据进行一一比对,极大的提高了同步验证的效率。[0103]于所述图3中,所述s208采用以下标注展示:[0104]s81:提取所述目标数据库中的目标数据及所述原始数据库中的原始数据;[0105]s82:验证所述目标数据和原始数据是否一致;[0106]s83:若是,则判定所述目标数据库和所述原始数据库完成同步;[0107]s84:若否,则生成报错报文,并将所述报错报文发送至所述控制端。[0108]实施例三:[0109]请参阅图4,本实施例的一种数据库同步装置1,包括:[0110]数据库识别模块12,用于识别目标数据库和原始数据库;[0111]数据获取模块13,用于从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据;[0112]差异对比模块15,用于对比所述目标数据和原始数据之间的差异得到差异数据;[0113]数据同步模块17,用于将所述差异数据载入预置的公式程序中获得同步脚本,通过所述同步脚本将所述差异数据同步到所述目标数据库或原始数据库中,使所述目标数据和所述原始数据中的数据同步。可选的,所述数据库同步装置1还包括:[0114]触发模块11,用于响应于预置的触发周期或控制端发送的同步信号。[0115]可选的,所述数据库同步装置1还包括:[0116]结构调整模块14,用于判断所述目标数据和所述原始数据的数据结构是否一致;若是,则判定所述目标数据和所述原始数据为同类数据;若否,则将所述原始数据的数据类型转为所述目标数据的数据结构,使所述原始数据与所述目标数据成为同类数据。[0117]可选的,所述数据库同步装置1还包括:[0118]信道构建模块16,用于与所述控制端之间构建加密信道。[0119]可选的,所述数据库同步装置1还包括:[0120]同步验证模块18,用于提取所述目标数据库中的目标数据及所述原始数据库中的原始数据,验证所述目标数据和原始数据是否一致;若是,则判定所述目标数据库和所述原始数据库完成同步;若否,则生成报错报文,并将所述报错报文发送至所述控制端。[0121]本技术方案应用于大数据的数据处理领域,通过识别目标数据库和原始数据库,从所述目标数据库中获取目标数据,从所述原始数据库中获取原始数据,对比所述目标数据和原始数据之间的差异得到差异数据,将所述差异数据载入预置的公式程序中获得同步脚本,通过所述同步脚本实现各数据库之间的差异同步,进而实现各数据库之间的数据同步。[0122]实施例四:[0123]为实现上述目的,本发明还提供一种计算机设备5,实施例三的数据库同步装置的组成部分可分散于不同的计算机设备中,计算机设备5可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个应用服务器所组成的服务器集群)等。本实施例的计算机设备至少包括但不限于:可通过系统总线相互通信连接的存储器51、处理器52,如图5所示。需要指出的是,图5仅示出了具有组件‑的计算机设备,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。[0124]本实施例中,存储器51(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器51可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,存储器51也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器51还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,存储器51通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例三的数据库同步装置的程序代码等。此外,存储器51还可以用于暂时地存储已经输出或者将要输出的各类数据。[0125]处理器52在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器52通常用于控制计算机设备的总体操作。本实施例中,处理器52用于运行存储器51中存储的程序代码或者处理数据,例如运行数据库同步装置,以实现实施例一和实施例二的数据库同步方法。[0126]实施例五:[0127]为实现上述目的,本发明还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,程序被处理器52执行时实现相应功能。本实施例的计算机可读存储介质用于存储数据库同步装置,被处理器52执行时实现实施例一和实施例二的数据库同步方法。[0128]上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。[0129]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。[0130]以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的
技术领域
:,均同理包括在本发明的专利保护范围内。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1