数据库切换方法、装置及设备制造方法及图纸

技术编号:16644910 阅读:30 留言:0更新日期:2017-11-26 17:25
本说明书实施例提供一种数据库切换方法、装置及设备,所述方法包括:在有数据写入源数据库时,不会直接将写入的数据同步到目标数据库,而是将所写的数据标记为待同步的数据;在到达预定的同步时间,再向目标数据库同步源数据库中被标记的数据;在源数据库中被标记的数据均同步到目标数据库后,再将目标数据库切换为所述业务系统优先访问的数据库。可以减少数据在不同数据库之间的迁移过程,对业务处理过程的影响,进而提高业务处理效率。

Database switching method, device and equipment

This manual embodiment provides a database switching method, device and equipment, the method includes: in the data is written to the source database, not directly write data synchronization to the target database, but the data written by mark for data synchronization; at a predetermined time synchronization, synchronization to source the target database is labeled data in the source database; labeled data are synchronized to the target database, and then switch to the target database service system priority access database. It can reduce the migration process of data between different databases, the impact on the business process, and then improve the efficiency of business processing.

【技术实现步骤摘要】
数据库切换方法、装置及设备
本说明书实施例涉及数据处理
,尤其涉及数据库切换方法、装置及设备。
技术介绍
随着数据库类型的多样化,很多业务系统都面临着将业务数据由源数据库迁移到目标数据库的问题。为了解决业务数据在不同数据库之间迁移的问题,相关技术可以响应业务请求,将与业务请求相关的数据写入源数据库的同时,将写入源数据库的数据同步到目标数据库。综上可知,这种解决业务数据在不同数据库之间迁移的技术,会加大数据库的访问开销,进而影响业务处理效率,因此,需要一种新的技术来解决业务数据在不同类型的数据库之间迁移的问题。
技术实现思路
有鉴于此,本说明书实施例提供一种数据库切换方法、装置及设备。根据本说明书实施例的第一方面,提供一种数据库切换方法,包括步骤:在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;如果到达预定的同步时间,向目标数据库同步源数据库中被标记的数据;源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。根据本说明书实施例的第二方面,提供一种数据库切换装置,包括:数据标记模块,用于在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;数据同步模块,用于在到达预定的同步时间时,向目标数据库同步源数据库中被标记的数据;数据库切换模块,用于在源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。根据本说明书实施例的第三方面,提供一种计算机设备,包括:处理器;存储处理器可执行指令的存储器;其中,所述处理器耦合于所述存储器,用于读取所述存储器存储的程序指令,并作为响应,执行如下操作:在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;如果到达预定的同步时间,向目标数据库同步源数据库中被标记的数据;源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。实施本说明书提供的实施例,在有数据写入源数据库时,不会直接将写入的数据同步到目标数据库,而是将所写的数据标记为待同步的数据;在到达预定的同步时间,再向目标数据库同步源数据库中被标记的数据;在源数据库中被标记的数据均同步到目标数据库后,再将目标数据库切换为所述业务系统优先访问的数据库。可以减少数据在不同数据库之间的迁移过程,对业务处理过程的影响,进而提高业务处理效率。附图说明图1是本说明书一示例性实施例示出的实现数据库切换的系统的架构图;图2是本说明书一示例性实施例示出的数据库切换方法的流程图;图3-6是本说明书一示例性实施例示出的数据库切换前后的数据写入过程的示意图;图7是本说明书一示例性实施例示出的数据库切换装置的框图;图8是本说明书一示例性实施例示出的计算机设备的硬件结构图。具体实施方式这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。请参阅图1,图1所示的是本说明书一示例性实施例示出的实现数据处理的系统100的架构图。系统100可以包括经由网络112与一个或多个客户端106进行数据通信的运营服务器105,以及独立于运营服务器105或集成于运营服务器105的数据库115、116。网络112可以包括例如互联网、内部网、外部网、广域网(WAN)、局域网(LAN)、有线网、无线网或其它合适的网络等,或者两个或更多个这类网络的任何组合。贯穿示例性实施方案的论述,应了解,术语“数据”和“信息”可在本说明书中互换地用于指代可存在于基于计算机的环境中的文本、图像、音频、视频或任何其它形式的信息。运营服务器105上可以包括可商购获得的超文本传送协议(HTTP)服务器应用,如HTTP服务器、互联网信息服务(IIS)和/或其它服务器。客户端106可以是安装有应用的网络装置。这里提到的应用可以是提供各种服务的业务系统涉及的应用,例如提供账务转入或转出服务的金融系统、提供通讯服务的通讯系统等,网络装置从硬件上可以包括桌上型计算机、膝上型计算机、平板计算机、智能电话、手持型计算机、个人数字助理(“PDA”),或任何其它有线或无线处理器驱动的装置。一旦用户使用客户端106并通过网络112向运营服务器105发起注册请求,运营服务器105可以记录该用户的注册信息,并按照注册请求在运营服务器105中开设预置权限的账号。此外,可以存储有各用户注册的账户、各账户的各种密码(登录密码和/或业务处理密码等等)以及用户注册时上传的身份验证信息。后续每次用户通过客户端106发起针对某个业务的业务请求,例如:业务数据访问请求、业务数据调取请求等,从而对运营服务器105发生访问时,运营服务器105基于每次业务请求中携带的用户ID之类的表明用户身份的标识,可以获知并记录这样的业务请求。特别的,可以记录该用户的请求时间,可选择的,也可以记录发起请求时的IP地址,或者所采用的网络装置的硬件类型,或者客户端版本/客户端所基于的操作系统版本之类信息中一个或多个。特别的,对于发生数据更新的业务请求,例如转入或转出资源的业务请求、修改业务状态的请求等,运营服务器105还可以记录该业务请求,并通过执行相应的内部或外部的操作后给予用户特定的响应。一般地,所有业务请求,均会在运营服务器105中留下相应记录。运营服务器105可以按照用户ID、业务描述信息等信息来分别归类不同用户的所有业务请求。对于交互行为的业务请求,例如不同注册用户之间的交互,也可以按照上述用户ID分类并构成集合。运营服务器105可以用数据库115或数据库116来存储上述业务请求、响应该业务请求的操作以及该操作产生的业务数据,数据库115和数据库116可用于响应客户端106的业务请求的数据库。针对冗余备份的应用场景,数据库115可以是主数据库和该主数据库的冗余备份数据库中的一数据库,数据库116可以是主数据库和该主数据库的冗余备份数据库中的一数据库。针对数据迁移的应用场景,数据库115可以是主数据库和该主数据库的迁移数据库中的一数据库,数据库116可以是主数据库和该主数据库的迁移数据库中的一数据库。其中,主数据库或迁移数据库可以是Qra本文档来自技高网...
数据库切换方法、装置及设备

【技术保护点】
一种数据库切换方法,包括步骤:在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;如果到达预定的同步时间,向目标数据库同步源数据库中被标记的数据;源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。

【技术特征摘要】
1.一种数据库切换方法,包括步骤:在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;如果到达预定的同步时间,向目标数据库同步源数据库中被标记的数据;源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。2.根据权利要求1所述的方法,源数据库中被标记的数据均同步到目标数据库后,所述方法还包括以下步骤:向目标数据库同步源数据库中未被标记的待同步数据;所述将目标数据库切换为所述业务系统优先访问的数据库的步骤,在源数据库中未被标记的待同步数据均同步到目标数据库后执行。3.根据权利要求1所述的方法,将目标数据库切换为所述业务系统优先访问的数据库后,所述方法还包括以下步骤:预定时段内如果有数据写入目标数据库,将所写的数据标记为待同步的数据;到达预定的同步时间时,向源数据库同步目标数据库中被标记的数据。4.根据权利要求3所述的方法,如果目标数据库在所述预定时段内未出现异常运行状况,所述方法还包括以下步骤:所述预定时段后有数据写入目标数据库时,获取当前时间对应的待同步数据,其中,当前时间与所述预定时段的时间距离越大,对应的待同步数据越少;写入的数据与当前时间对应的待同步数据匹配时,将所写的数据标记为待同步的数据。5.根据权利要求3所述的方法,如果目标数据库在所述预定时段内出现异常运行状况,所述方法还包括以下步骤:重新将源数据库切换为所述业务系统优先访问的数据库;在有数据写入源数据库时,将所写的数据标记为待同步的数据;到达预定的同步时间时,向源数据库同步目标数据库中被标记的数据,向目标数据库同步源数据库中被标记的数据;源数据库中被标记的数据均同步到目标数据库后,重新将目标数据库切换为所述业务系统优先访问的数据库。6.根据权利要求5所述的方法,在同步被标记的任一组数据时,将该组数据由乐观锁版本高的数据库同步到乐观锁版本低的数据库。7.根据权利要求1所述的方法,所述方法还包括以下步骤:写入的数据是流水型数据时,将所述写入的数据所属的业务和数据库存储到预定的业务操作记录,其中,所属的数据库为源数据库。8.根据权利要求7所述的方法,将所述写入的数据所属的业务和数据库存储到预定的业务操作记录前,所述方法还包括以下步骤:调取所述业务操作记录;判断所述业务操作记录中是否记录有所述写入的数据所属的业务和数据库;将所述写入的数据所属的业务和数据库记录到预定的业务操作记录的步骤,在所述业务操作记录中没有所述写入的数据所属的业务和数据库时执行。9.根据权利要求7所述的方法,所述业务操作记录存储在目标数据库中。10.根据权利要求1所述的方法,将目标数据库切换为所述业务系统优先访问的数据库后,所述方法包括以下步骤:在主数据库被操作前,基于以下至少一项确定操作策略:待操作的数据的数据类型,待操作的数据所属的业务,预定的业务操作记录;根据所确定的操作策略对主数据库执行相应操作;其中,源数据库和目标数据库中被所述业务系统优先访问的数据库为主数据库,另一数据库为从数据库;所述业务操作记录包括已操作的数据所属的业务和数据库;所确定的操作策略为:禁止对主数据库执行相应操作的策略;或,允许对主数据库执行相应操作的策略。11.根据权利要求10所述的方法:从数据库中与所述待操作的数据同业务的数据,已全同步到主数据库时,所确定的操作策略为允许对主数据库执行相应操作的策略;从数据库中与所述待操作的数据同业务的数据,未全同步到主数据库时,所确定的操作策略为禁止对主数据库执行相应操作的策略。12.根据权利要求10所述的方法:待操作的数据不是流水型数据,且从数据库中与所述待操作的数据同业务的数据,已全同步到主数据库时,所确定的操作策略为允许对主数据库执行相应操作的策略;待操作的数据不是流水型数据,且从数据库中与所述待操作的数据同业务的数据,未全同步到主数据库时,所确定的操作策略为禁止对主数据库执行相应操作的策略。13.根据权利要求10所述的方法:待操作的数据是流水型数据,且所述业务操作记录中没有所述待操作的数据所属的业务时,所确定的操作策略为允许对主数据库执行相应操作的策略;所述方法还包括以下步骤:在对主数据库执行相应操作后,将所操作的数据所属的业务与数据库记录到所述业务操作记录,其中,所属的数据库为主数据库。14.根据权利要求10所述的方法:待操作的数据是流水型数据,所述业务操作记录中有所述待操作的数据所属的业务,且所述业务操作记录中属于该业务的数据不属于主数据库时,所确定的操作策略为禁止对主数据库执行相应操作的策略;待操作的数据是流水型数据,所述业务操作记录中有所述待操作的数据所属的业务,且所述业务操作记录中属于该业务的数据均属于主数据库时,所确定的操作策略为允许对主数据库执行相应操作的策略;所述方法还包括以下步骤:在对主数据库执行相应操作后,将所操作的数据所属的业务与数据库记录到所述业务操作记录,其中,所属的数据库为主数据库。15.根据权利要求10所述的方法:待操作的数据是流水型数据,所述业务操作记录中有所述待操作的数据所属的业务,所述业务操作记录中属于该业务的数据不属于主数据库,且从数据库中与所述待操作的数据同业务的数据,未全同步到主数据库时,所确定的操作策略为禁止对主数据库执行相应操作的策略;待操作的数据是流水型数据,所述业务操作记录中记录有所述待操作的数据所属的业务,所述业务操作记录中属于该业务的数据不属于主数据库,且从数据库中与所述待操作的数据同业务的数据,全同步到主数据库时,所确定的操作策略为允许对主数据库执行相应操作的策略;所述方法还包括以下步骤:在对主数据库执行相应操作后,将所操作的数据所属的业务与数据库记录到所述业务操作记录,其中,所属的数据库为主数据库。16.根据权利要求10所述的方法,所述业务操作记录存储在从数据库中。17.根据权利要求10至16中任一项所述的方法,如果待操作的数据是流水型数据,禁止的操作是写操作。18.根据权利要求10至16中任一项所述的方法,禁止的操作为读操作时,所述方法还包括以下步骤:允许在从数据库对所述待读的数据进行读操作。19.根据权利要求10至16中任一项所述的方法,所述根据所确定的操作策略对主数据库执行相应操作,还包括:在各操作响应的业务请求相同时,根据相同的操作策略对主数据库执行各操作;所述操作策略是响应该业务请求对主数据库执行首次操作前,根据待操作的数据的数据类型、待操作的数据所属的业务和预定的业务操作记录中的至少一项所确定的操作策略。20.一种数据库切换装置,包括:数据标记模块,用于在有数据写入源数据库时,将所写的数据标记为待同步的数据,其中,源数据库为业务系统优先访问的数据库;数据同步模块,用于在到达预定的同步时间时,向目标数据库同步源数据库中被标记的数据;数据库切换模块,用于在源数据库中被标记的数据均同步到目标数据库后,将目标数据库切换为所述业务系统优先访问的数据库。21.根据权利要求20所述的装置,所述装置还包括:深度同步模块,用于在源数...

【专利技术属性】
技术研发人员:叶恺王啸
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1