CN105989139A - 一种事务同步方法及设备 - Google Patents

一种事务同步方法及设备 Download PDF

Info

Publication number
CN105989139A
CN105989139A CN201510090114.4A CN201510090114A CN105989139A CN 105989139 A CN105989139 A CN 105989139A CN 201510090114 A CN201510090114 A CN 201510090114A CN 105989139 A CN105989139 A CN 105989139A
Authority
CN
China
Prior art keywords
affairs
standby
master library
passage
storehouse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201510090114.4A
Other languages
English (en)
Inventor
林晓斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201510090114.4A priority Critical patent/CN105989139A/zh
Publication of CN105989139A publication Critical patent/CN105989139A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种事务同步方法。当检测到当前存在已执行时间超过预设阈值的事务时,主库将事务在执行过程中的日志写入当前空闲的备用事务通道中,以使备用事务通道将日志按照顺序发送至备库,同时主库将执行完事务后所生成的与事务对应的标识通告备库,并根据备库在标记完成后向主库返回的响应消息进行主备复制处理。从而确保了不会出现由于处理时间过长的事务而导致的主备延迟。

Description

一种事务同步方法及设备
技术领域
本申请涉及通信技术领域,特别涉及一种事务同步方法。本申请同时还涉及一种事务同步设备。
背景技术
对于数据库应用技术来说,数据库主备复制是其中非常重要的一环。由于数据库的基本装置之一是日志,因此数据库实例的日志往往需要用于实时传输给另外一个实例,并在目标实例应用,以保持两个实例的数据一致,这个过程称为主备复制。
在主备复制的过程中难免会出现主备延迟的问题。从业务端角度看,主备延迟定义为:设定客户端在主库执行一个事务得到返回的时刻Ta,备库执行完这个事务的时刻Tb。则这个事务的主备延迟时间为Tb-Ta。
以数据库主备同步基本流程为例,其包括的流程如下:
a)主库执行事务;
b)主库将事务写入事务日志;
c)主库返回执行成功的信息给客户端;
d)主库将事务日志发给备库;
e)备库接收事务日志;
f)备库执行事务日志;
基于上述流程,事务延迟时间为步骤f结束时刻与步骤c结束时刻的时间差。由此可见,当主库执行一个时长为N的事务时,由于执行完成以后才记录事务日志,之后传输给备库再执行,假设传输时间为m,因此备库延迟至少为N+m。对于大事务来说,由于本身执行时间长(N较大),而且由于日志量大,传输消耗时间也长(m较大),从而导致了主备延迟增大。而在实际业务中,若一个事务执行时间超过1小时而导致备库延迟1小时以上,有延迟的备库是不能提供服务的(否则用户会看到数据丢失现象),在此期间若主库发生宕机等问题,则造成服务不可用。
由此可见,如何在不破坏事务的原子性和一致性的前提下解决大事务导致的主备延迟,成为本领域技术人员亟待解决的技术问题。
发明内容
本申请提供了一种事务同步方法,用以解决主库执行事务导致的主备延迟时间增大的问题,该方法应用于包括主库以及备库的数据库系统中,所述主库以及所述备库之间设置有备用事务通道,包括:
当检测到已执行时间超过预设时间阈值的正在执行的事务时,所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库;
所述主库将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
所述主库根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
本申请还提出了另一种事务同步方法,该方法应用于包括主库以及备库的数据库系统中,所述主库以及所述备库之间设置有备用事务通道,包括:
所述备库通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
所述备库根据所述主库发送的标识集合,按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
所述备库获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
所述备库根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
相应地,本申请还提出了一种事务同步设备,所述设备作为主库应用于包括所述主库以及备库的数据库系统中,该设备包括:
写入模块,用于当检测到已执行时间超过预设时间阈值的正在执行的事务时将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库;
通告模块,用于将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
复制模块,用于根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
本申请还提出了另一种事务同步设备,所述设备作为备库应用于包括主库以及所述备库的数据库系统中,该设备包括:
接收模块,用于通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
执行模块,用于根据标识集合按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
获取模块,用于获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
标记模块,用于根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
由此可见,通过应用以上技术方案,当检测到已执行时间超过预设时间阈值的正在执行的事务时,主库将事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,备用事务通道将日志按照先后顺序发送至备库,同时主库将执行完事务后所生成的与事务对应的标识通告备库,并根据备库在标记完成后向主库返回的响应消息进行主备复制处理。从而确保了不会出现由于处理时间过长的事务而导致的主备延迟。
附图说明
图1为本申请提出的一种事务同步方法的流程示意图;
图2为本申请提出的另一种事务同步方法的流程示意图;
图3为本申请提出的一种事物同步设备的结构示意图;
图4为本申请提出的另一种事物同步设备的结构示意图。
具体实施方式
有鉴于背景技术中所提出的问题,本申请提出了一种事务同步方法。主库事务在执行过程中,接受事务日志,在满足前置的事务都完成后开始执行,对于执行时间超长的事务,能够在主库执行事务期间,该事务同时在备库执行。与主库原生的串行执行方案相比,能够减少事务的主备延迟。
如图1所示,该方法包括以下步骤,其中在主库以及所述备库之间设置有备用事务通道:
S101,当检测到已执行时间超过预设时间阈值的正在执行的事务时,所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库。
需要说明的是,本申请中预设时间阈值的取值取决于业务对延迟的可接受程度。本领域技术人员在此基础上可以根据实际经验灵活进行设定。同时也可以根据可能出现的并发事务个数设置多个备用事务通道,这些都属于本发明的保护范围。
在本申请优选的实施例中,该过程分为以下三个步骤进行:
步骤a)所述主库扫描所有正在执行的事务,判断是否存在已执行时间超过预设阈值的事务。
步骤b)若当前存在已执行时间超过预设阈值的事务,所述主库将自身在执行所述事务之前已经执行完毕的事务的标识集合发送至所述备库,以使所述备库在判断与所述标识集合中各标识对应的事务都已经在自身中执行后执行所述事务。
由于主库将自身已经执行完毕的事务的标识集合发送至备库,因此备库从大事务通道接收到的事务执行前必须确保prev_exected_sets中的事务已经执行完成,从而确保了事务不会被提前执行。
步骤c)所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中。
S102,所述主库将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应。
在本申请优选的实施例中,该步骤中主库将执行完所述事务后所生成的与所述事务对应的标识写入所述备用事务通道,以使所述备用事务通道将所述标识发送至所述备库。而对于备库来说,备库的大事务收到唯一标识后,写入正在执行的事务,确保了从标准通道得到的事务比从标准通道得到的这个事务先执行。而由于标准通道中的事务总是按顺序执行,可以确保大事务通道的事务不会被滞后执行。
相应地,备库在从所述备用事务通道获取所述标识后,为备用事务通道中所执行的所述事务设置所述标识,并向所述主库返回所述响应消息。这样备用事务通道将先于标准通道收到唯一标识,确保执行完成后,标准通道接收到此事务后不会再执行,从而确保该事务不会被重复执行。
S103,所述主库根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
由于主库和备库之间设置有备用事务通道,因此在本申请优选的实施例中,所述主库在接收所述响应消息后,不仅需要将所述事务写入所述主库与所述备库之间的标准通道的日志;而且还同时需要将所述备用事务通道的日志清空,并设置为闲置。
此外,在执行以上流程的过程中,如果主库执行所述事务失败,那么主库向所述主库与所述备库之间的标准同步通道写入回滚命令,所述回滚命令用于将所述备库准备同步执行的所述事务进行回滚,随后主库将所述备用事务通道的日志清空,并将所述备用事务通道设置为闲置。这样这样在备库准备同步执行的大事务也会被回滚,与主库逻辑保持一致。
以上为本申请针对主库一侧所提出的事务同步方法,相应地,针对备库一侧本申请亦提出了对应的一种事务同步方法,如图2所示,包括以下步骤:
S201,所述备库通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
S202,所述备库根据所述主库发送的标识集合,按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
S203,所述备库获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应。
在本申请优选的实施例中,备库通过所述备用事务通道接收所述标识,所述标识是由所述主库在执行完所述事务后所生成并写入所述备用事务通道的。
S204,所述备库根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
在本申请优选的实施例中,所述备库判断与所述标识集合中各标识对应的事务是否都已经在自身中执行,并在判断结果为是时按照所述日志的接收先后顺序执行所述事务。
为了进一步阐述本申请的技术思想,现结合具体的应用场景,对本申请的技术方案进行说明。在本具体实施例中,主备库之间除了标准的同步通道,增加一个额外的大事务通道,这个通道的协议如下:
1)每次接受事务日志前,都先发送prev_exected_sets,表示在此事务之前,主库已经执行的事务标识集合;
2)备库可以在事务的执行过程中设置本事务的标识(而非必须在开头)
基于上述设置,具体实施例中的流程如下:
步骤1)主库增加一个事务扫描线程,扫描所有正在执行的事务。对于已执行时间超过n秒的事务,将事务执行过程中的日志直接写到某个空闲的大事务通道。
步骤2)大事务通道将日志按顺序发给备库。在事务执行过程中,这个事务日志会逐渐增加,因此该通道会持续生成日志
步骤3)备库从该通道收到日志后,判断所有的prev_exected_sets都已经在备库执行后,开始执行此大事务。
步骤4)若主库执行过程中事务需要回滚,则往通道中写入回滚命令,转到步骤8,否则转到步骤5。
步骤5)当事务执行完成,准备生成标识时,将将标识先写入大事务通道中;
步骤6)备库从大事务通道收到标识后,给大事务通道中正在执行的事务设置标识,返回ACK
步骤7)主库收到ACK后将事务写入标准通道的日志。
步骤8)主库清空大事务通道的日志,并设置为闲置。
通过执行以上技术方案,主库事务在执行过程中,大事务通道接受事务日志,在满足前置的事务都完成后开始执行,对于执行时间超长的事务,能够在主库执行事务期间,该事务同时在备库执行。与主库原生的串行执行方案相比,能够减少事务的主备延迟。若主备机器配置相同且压力相同,则可预知该方案能确保不会出现由于大事务导致的主备延迟。
为达到以上技术目的,本申请还提出了一种事务同步设备,如图3所示,所述设备作为主库应用于包括所述主库以及备库的数据库系统中,该设备包括:
写入模块310,用于当检测到已执行时间超过预设时间阈值的正在执行的事务时将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库;
通告模块320,用于将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
复制模块330,用于根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
在具体的应用场景中,所述通告模块,具体用于将执行完所述事务后所生成的与所述事务对应的标识写入所述备用事务通道,以使所述备用事务通道将所述标识发送至所述备库;
其中,所述备库在从所述备用事务通道获取所述标识后,为所述备用事务通道中所执行的所述事务设置所述标识,并向所述主库返回所述响应消息。
在具体的应用场景中,所述复制模块,具体用于在接收所述响应消息后,将所述事务写入所述主库与所述备库之间的标准通道的日志,以及将所述备用事务通道的日志清空,并设置为闲置
在具体的应用场景中,所述写入模块,具体用于描所有正在执行的事务,判断是否存在已执行时间超过预设阈值的事务;并在当前存在已执行时间超过预设阈值的事务时,将自身在执行所述事务之前已经执行完毕的事务的标识集合发送至所述备库,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中。
在具体的应用场景中,还包括:
回滚模块,用于在执行所述事务失败时,向所述主库与所述备库之间的标准同步通道写入回滚命令,将所述备用事务通道的日志清空,并将所述备用事务通道设置为闲置,所述回滚命令用于将所述备库准备同步执行的所述事务进行回滚。
本申请还提出了一种事务同步设备,该设备作为备库应用于包括主库以及所述备库的数据库系统中,如图4所示,包括:
接收模块410,用于通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
执行模块420,用于根据标识集合按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
获取模块430,用于获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
标记模块440,用于根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
在具体的应用场景中,所述获取模块具体用于:
通过所述备用事务通道接收所述标识,所述标识是由所述主库在执行完所述事务后所生成并写入所述备用事务通道的。
在具体的应用场景中,所述执行模块具体用于:
判断与所述标识集合中各标识对应的事务是否都已经在自身中执行,并在判断结果为是时按照所述日志的接收先后顺序执行所述事务。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。

Claims (16)

1.一种事务同步方法,其特征在于,所述方法应用于包括主库以及备库的数据库系统中,所述主库以及所述备库之间设置有备用事务通道,该方法包括:
当检测到已执行时间超过预设时间阈值的正在执行的事务时,所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库;
所述主库将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
所述主库根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
2.如权利要求1所述的方法,其特征在于,所述主库将与所述事务对应的标识通告所述备库,具体为:
所述主库将执行完所述事务后所生成的与所述事务对应的标识写入所述备用事务通道,以使所述备用事务通道将所述标识发送至所述备库;
其中,所述备库在从所述备用事务通道获取所述标识后,为所述备用事务通道中所执行的所述事务设置所述标识,并向所述主库返回所述响应消息。
3.如权利要求1所述的方法,其特征在于,所述主库根据所述备库在所述标记完成后向所述主库返回的响应消息进行主备复制处理,具体为:
所述主库在接收所述响应消息后,将所述事务写入所述主库与所述备库之间的标准通道的日志;
所述主库将所述备用事务通道的日志清空,并设置为闲置。
4.如权利要求1所述的方法,其特征在于,当检测到已执行时间超过预设时间阈值的正在执行的事务时,所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,具体为:
所述主库扫描所有正在执行的事务,判断是否存在已执行时间超过预设阈值的事务;
若当前存在已执行时间超过预设阈值的事务,所述主库将自身在执行所述事务之前已经执行完毕的事务的标识集合发送至所述备库,以使所述备库在判断与所述标识集合中各标识对应的事务都已经在自身中执行后执行所述事务;
所述主库将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中。
5.如权利要求1所述的方法,其特征在于,在所述主库将所述事务在执行过程中的日志写入当前空闲的备用事务通道中之后,还包括:
若所述主库执行所述事务失败,所述主库向所述主库与所述备库之间的标准同步通道写入回滚命令,所述回滚命令用于将所述备库准备同步执行的所述事务进行回滚;
所述主库将所述备用事务通道的日志清空,并将所述备用事务通道设置为闲置。
6.一种事务同步方法,其特征在于,所述方法应用于包括主库以及备库的数据库系统中,所述主库以及所述备库之间设置有备用事务通道,该方法包括:
所述备库通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
所述备库根据所述主库发送的标识集合,按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
所述备库获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
所述备库根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
7.如权利要求6所述的方法,其特征在于,所述备库获取由所述主库通告的与所述事务对应的标识,具体为:
所述备库通过所述备用事务通道接收所述标识,所述标识是由所述主库在执行完所述事务后所生成并写入所述备用事务通道的。
8.如权利要求6所述的方法,其特征在于,所述备库根据所述主库发送的标识集合按照所述日志的接收先后顺序执行所述事务,具体为:
所述备库判断与所述标识集合中各标识对应的事务是否都已经在自身中执行,并在判断结果为是时按照所述日志的接收先后顺序执行所述事务。
9.一种事务同步设备,其特征在于,所述设备作为主库应用于包括所述主库以及备库的数据库系统中,该设备包括:
写入模块,用于当检测到已执行时间超过预设时间阈值的正在执行的事务时将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中,以使所述备用事务通道将所述日志按照先后顺序发送至所述备库;
通告模块,用于将与所述事务对应的标识通告所述备库,以使所述备库根据所述标识对所述事务进行标记,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
复制模块,用于根据所述备库返回的响应消息进行主备复制处理,所述响应消息为所述备库在根据所述标识对所述事务标记完成后生成的。
10.如权利要求9所述的设备,其特征在于,
所述通告模块,具体用于将执行完所述事务后所生成的与所述事务对应的标识写入所述备用事务通道,以使所述备用事务通道将所述标识发送至所述备库;
其中,所述备库在从所述备用事务通道获取所述标识后,为所述备用事务通道中所执行的所述事务设置所述标识,并向所述主库返回所述响应消息。
11.如权利要求9所述的设备,其特征在于,
所述复制模块,具体用于在接收所述响应消息后,将所述事务写入所述主库与所述备库之间的标准通道的日志,以及将所述备用事务通道的日志清空,并设置为闲置
12.如权利要求6所述的设备,其特征在于,
所述写入模块,具体用于描所有正在执行的事务,判断是否存在已执行时间超过预设阈值的事务;并在当前存在已执行时间超过预设阈值的事务时,将自身在执行所述事务之前已经执行完毕的事务的标识集合发送至所述备库,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中。
13.如权利要求6所述的设备,其特征在于,还包括:
回滚模块,用于在执行所述事务失败时,向所述主库与所述备库之间的标准同步通道写入回滚命令,将所述备用事务通道的日志清空,并将所述备用事务通道设置为闲置,所述回滚命令用于将所述备库准备同步执行的所述事务进行回滚。
14.一种事务同步设备,其特征在于,所述设备作为备库应用于包括主库以及所述备库的数据库系统中,该设备包括:
接收模块,用于通过所述备用事务通道接收日志,所述日志是由所述主库在检测到已执行时间超过预设时间阈值的正在执行的事务时,将所述事务在执行过程中所生成的日志写入当前空闲的备用事务通道中的;
执行模块,用于根据标识集合按照所述日志的接收先后顺序执行所述事务,所述标识集合是由所述主库在将所述日志写入所述备用事务通道之前发送至所述备库的,为所述主库在执行所述事务之前已经执行完毕的事务的标识的集合;
获取模块,用于获取由所述主库通告的与所述事务对应的标识,所述标识为所述主库在执行完毕所述事务后生成且与所述事务唯一对应;
标记模块,用于根据所述标识对所述事务进行标记,并在所述标记完成后向所述主库返回响应消息,以使所述主库根据所述响应消息进行主备复制处理。
15.如权利要求14所述的设备,其特征在于,所述获取模块具体用于:
通过所述备用事务通道接收所述标识,所述标识是由所述主库在执行完所述事务后所生成并写入所述备用事务通道的。
16.如权利要求14所述的设备,其特征在于,所述执行模块具体用于:
判断与所述标识集合中各标识对应的事务是否都已经在自身中执行,并在判断结果为是时按照所述日志的接收先后顺序执行所述事务。
CN201510090114.4A 2015-02-27 2015-02-27 一种事务同步方法及设备 Pending CN105989139A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510090114.4A CN105989139A (zh) 2015-02-27 2015-02-27 一种事务同步方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510090114.4A CN105989139A (zh) 2015-02-27 2015-02-27 一种事务同步方法及设备

Publications (1)

Publication Number Publication Date
CN105989139A true CN105989139A (zh) 2016-10-05

Family

ID=57038407

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510090114.4A Pending CN105989139A (zh) 2015-02-27 2015-02-27 一种事务同步方法及设备

Country Status (1)

Country Link
CN (1) CN105989139A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108319617A (zh) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 确定数据库主从差异的方法、装置及切换控制方法、装置
CN109271442A (zh) * 2018-07-27 2019-01-25 东软集团股份有限公司 数据库同步恢复方法、装置、计算机可读存储介质和电子设备
CN109783200A (zh) * 2017-11-13 2019-05-21 阿里巴巴集团控股有限公司 数据处理方法、装置及设备
CN110737649A (zh) * 2019-09-25 2020-01-31 苏州浪潮智能科技有限公司 一种数据库的事务日志的处理方法、设备以及存储介质
CN111858021A (zh) * 2019-08-26 2020-10-30 马上消费金融股份有限公司 交易渠道选择方法、线上交易方法以及相关装置
CN113297230A (zh) * 2020-07-27 2021-08-24 阿里巴巴集团控股有限公司 数据验证方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081611A (zh) * 2009-11-26 2011-06-01 中兴通讯股份有限公司 一种主、备网管系统数据库同步的实现方法及装置
CN102158373A (zh) * 2011-05-12 2011-08-17 哈尔滨工业大学 面向银行中间业务的高端服务器性能评测系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081611A (zh) * 2009-11-26 2011-06-01 中兴通讯股份有限公司 一种主、备网管系统数据库同步的实现方法及装置
CN102158373A (zh) * 2011-05-12 2011-08-17 哈尔滨工业大学 面向银行中间业务的高端服务器性能评测系统

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108319617A (zh) * 2017-01-17 2018-07-24 阿里巴巴集团控股有限公司 确定数据库主从差异的方法、装置及切换控制方法、装置
CN108319617B (zh) * 2017-01-17 2022-05-24 阿里云计算有限公司 确定数据库主从差异的方法、装置及切换控制方法、装置
CN109783200A (zh) * 2017-11-13 2019-05-21 阿里巴巴集团控股有限公司 数据处理方法、装置及设备
CN109783200B (zh) * 2017-11-13 2023-09-22 阿里云计算有限公司 数据处理方法、装置及设备
CN109271442A (zh) * 2018-07-27 2019-01-25 东软集团股份有限公司 数据库同步恢复方法、装置、计算机可读存储介质和电子设备
CN111858021A (zh) * 2019-08-26 2020-10-30 马上消费金融股份有限公司 交易渠道选择方法、线上交易方法以及相关装置
CN111858021B (zh) * 2019-08-26 2021-09-03 马上消费金融股份有限公司 交易渠道选择方法、线上交易方法以及相关装置
CN110737649A (zh) * 2019-09-25 2020-01-31 苏州浪潮智能科技有限公司 一种数据库的事务日志的处理方法、设备以及存储介质
CN110737649B (zh) * 2019-09-25 2023-01-06 苏州浪潮智能科技有限公司 一种数据库的事务日志的处理方法、设备以及存储介质
CN113297230A (zh) * 2020-07-27 2021-08-24 阿里巴巴集团控股有限公司 数据验证方法及装置
CN113297230B (zh) * 2020-07-27 2024-03-08 阿里巴巴集团控股有限公司 数据验证方法及装置

Similar Documents

Publication Publication Date Title
CN105989139A (zh) 一种事务同步方法及设备
CN109739929B (zh) 数据同步方法、装置及系统
CN111131399B (zh) 一种区块链中共识节点动态增加方法及装置
CN106899648B (zh) 一种数据处理方法和设备
CN106445414B (zh) 终端设备可用存储空间扩展方法和系统
CN105354108B (zh) 一种数据备份方法及节点
WO2016127903A1 (zh) 一种数据同步方法、装置和系统
US8370591B2 (en) Method and apparatus for automatic snapshot
CN106327191B (zh) 一种交易信息记录的方法与装置
CN105468718B (zh) 数据一致性处理方法、装置和系统
WO2019057193A1 (zh) 数据删除方法及分布式存储系统
CN106603711A (zh) 通信方法、系统及消息服务器
CN107040576A (zh) 信息推送方法及装置、通讯系统
CN105740248A (zh) 一种数据同步方法、装置及系统
CN103973727A (zh) 数据同步方法及装置
CN104102725A (zh) 一种hdfs中热点数据文件的动态副本创建方法和系统
CN110825758B (zh) 一种交易处理的方法及装置
CN111459416B (zh) 一种基于分布式存储的热迁移系统及其迁移方法
CN106682198B (zh) 一种实现自动化部署数据库的方法和装置
CN112231324B (zh) 一种实现增量数据比对的系统及方法
CN109005246B (zh) 一种数据的同步方法、装置及系统
CN113626399B (zh) 数据同步方法、装置、服务器及存储介质
CN107404527B (zh) 一种资源访问和控制方法及装置
CN115705269A (zh) 数据同步方法、系统、服务器及存储介质
CN111026810A (zh) 数据同步方法、装置及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20161005

RJ01 Rejection of invention patent application after publication