CN113391884A - 事务处理方法、装置、设备、存储介质、数据库系统 - Google Patents
事务处理方法、装置、设备、存储介质、数据库系统 Download PDFInfo
- Publication number
- CN113391884A CN113391884A CN202010176011.0A CN202010176011A CN113391884A CN 113391884 A CN113391884 A CN 113391884A CN 202010176011 A CN202010176011 A CN 202010176011A CN 113391884 A CN113391884 A CN 113391884A
- Authority
- CN
- China
- Prior art keywords
- transaction
- snapshot
- database
- generating
- backup database
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 230000001960 triggered effect Effects 0.000 claims abstract description 47
- 238000012545 processing Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 23
- 238000001514 detection method Methods 0.000 claims description 22
- 238000010926 purge Methods 0.000 claims description 3
- 239000003550 marker Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000004048 modification Effects 0.000 description 11
- 238000012986 modification Methods 0.000 description 11
- 238000012423 maintenance Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000012546 transfer Methods 0.000 description 8
- 230000004044 response Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
- G06F16/2365—Ensuring data consistency and integrity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种事务处理方法、装置、设备、存储介质、数据库系统,该事务处理方法包括:若接收到第一事务,则在主数据库中生成与第一事务对应的第一事务快照,在备份数据库中生成与第一事务对应的第二事务快照;若接收到在第一事务之后触发的第二事务,则在第一事务快照和第二事务快照之后添加标记信息,标记信息指示在不满足清除条件时,第一事务快照和第二事务快照之后产生的事务快照不会被清除;若接收到在第二事务之后触发的第三事务,则在主数据库中生成与第三事务对应的第三事务快照,在备份数据库中生成与第三事务对应的第四事务快照;根据第三事务快照和第四事务快照确定在主数据库与备份数据库中执行第一事务后的数据状态是否一致。
Description
技术领域
本发明涉及数据库技术领域,尤其涉及一种事务处理方法、装置、设备、存储介质、数据库系统。
背景技术
事务是为了实现特定的业务功能而访问数据库系统的最小逻辑工作单位,由一个操作序列构成。
为保证数据的安全性,目前大多数数据库系统都由主数据库和备份数据库组成,将主数据库中的数据镜像一份出来,存到备份数据库中,以实现数据的备份存储。通常,由主数据库为用户侧(或者称为业务侧)提供数据访问功能,即事务会先传输到主数据库执行。
基于事务的执行,主数据库往往会发生数据修改,而主数据库中发生的数据修改需要同步到备份数据库中,以保证主数据库和备份数据库之间的数据同步即数据状态一致。主数据库和备份数据库在进行数据同步的过程中,可能会发生意外情况,从而导致主数据库和备份数据库的数据同步失败,即主数据库和备份数据库的数据状态不一致。因此,需要有一种机制能够很方便地检测出主数据库和备份数据库的数据状态不一致的情况,以便及时进行响应处理。
发明内容
本发明实施例提供一种事务处理方法、装置、设备、存储介质、数据库系统,用以实现对主数据库和备份数据库之间数据状态的一致性进行准确检测。
第一方面,本发明实施例提供一种事务处理方法,该方法包括:
若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;
若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;
若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;
根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
第二方面,本发明实施例提供一种事务处理装置,该装置包括:
第一事务处理模块,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;
第二事务处理模块,用于若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;
第三事务处理模块,用于若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;
数据状态检测模块,用于根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
第三方面,本发明实施例提供一种电子设备,其中包括处理器和存储器,其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器至少可以实现第一方面中的事务处理方法。
第四方面,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器至少可以实现第一方面中的事务处理方法。
第五方面,本发明实施例提供了一种数据库系统,包括:
主数据库、备份数据库以及管控系统;
所述管控系统,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
在本发明实施例提供的方案中,当发生需要对数据库中的数据进行诸如查询、修改等操作的第一事务时,在主数据库中生成与该第一事务对应的第一事务快照以及在备份数据库中生成与该第一事务对应的第二事务快照。假设在第一事务之后触发了预设的第二事务,第二事务是自定义的事务,并不会对数据库中的数据进行任何操作,该第二事务的本质作用是标记作用。具体来说,由于第二事务是在第一事务之后触发的,基于该第二事务的触发,在第一事务快照之后添加标记信息以及在第二事务快照之后添加标记信息,其中,该标记信息指示在不满足清除条件时,第一事务快照和第二事务快照之后产生的事务快照不会被清除。假设第二事务之后又触发了第三事务,第三事务与第一事务类似,是对数据库中的数据进行诸如查询、修改等操作的事务,从而,在主数据库中生成与第三事务对应的第三事务快照以及在备份数据库中生成与第三事务对应的第四事务快照。由于上述标记信息的存在,即便发生快照清除事件,标记信息之后才生成的第三事务快照和第四事务快照并不会被清除,从而,可以根据第三事务快照和第四事务快照确定在主数据库与备份数据库中执行完第一事务后的数据状态是否一致,也即是确定主数据库和备份数据库是否都正确地执行了在第二事务之前产生的事务——第一事务。
综上,基于上述本发明实施例提供的方案,通过预先定义特定的某种事务(即上述第二事务),当需要检测主数据库和备份数据库是否数据同步时,并不依赖于时间轴来检测在某时刻两个数据库的数据状态是否一致,而是在当前最后触发的事务后面插入该特定事务,从而使得主数据库和备份数据库在执行该特定事务时,根据该特定事务中规定的标记操作,在该特定事务的前一事务所对应的事务快照后添加标记信息,以防止该特定事务之后触发的事务所对应的事务快照被清除,最终,依赖该特定事务之后触发的事务所对应的事务快照来检测主数据库和备份数据库在执行该特定事务之前的数据状态是否一致。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的事务处理方法的流程图;
图2为主数据库和备份数据库执行同一事务的原理示意图;
图3为主数据库和备份数据库对第一事务的执行过程示意图;
图4为主数据库和备份数据库对第二事务的执行过程示意图;
图5为主数据库和备份数据库对第三事务的执行过程示意图;
图6为本发明一实施例提供的事务处理装置的结构示意图;
图7为与图6所示实施例提供的事务处理装置对应的电子设备的结构示意图;
图8为本发明一实施例提供的数据库系统的组成示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多个”一般包含至少两个。
另外,下述各方法实施例中的步骤时序仅为一种举例,而非严格限定。
先对本文中涉及到的几个概念进行说明:
事务:事务是为了实现特定的业务功能而访问数据库的最小逻辑工作单位,由一个操作序列构成。只有这个操作序列包含的全部操作都成功完成,才能使得数据库从一种状态转换为另一种状态。如果这个操作序列中的任意一个操作发生错误,那么就需要回滚之前已经完成的操作。也就是说,同一个事务中的所有操作,要么全都正确执行,要么全都不要执行。
事务快照:针对一个事务来说,该事务被某数据库(主数据库、备份数据库)执行后,往往会改变该数据库中的数据状态,简单来说就是会修改数据库中的数据。简单来说,该事务对应的事务快照中包含执行该事务之前数据库的数据状态和执行完该事务之后数据库的数据状态。举例来说,假设某事务需要对数据库中的某两条数据进行修改,那么被修改之前的这两条数据以及这两条数据被修改后的结果将包含在该事务的事务快照中。
快照清除:在实际应用中,事务快照在生成之后会被暂存较短时间,之后便会被自动清除,以减少对存储资源的占用。
事务日志:主数据库上接收的所有事务中所描述的数据修改操作会按一定的格式流式地记录下来,称为事务日志。
日志复制:为实现主数据库和备份数据库的数据同步,将主数据库上的事务日志拷贝到备份数据库上,备份数据库可以按顺序依次再现各数据修改操作,即在备份数据库中再顺序执行一遍各事务,以实现数据同步。
下面结合以下的一些实施例来对本文提供的事务处理方法的执行过程进行说明。
图1为本发明一实施例提供的事务处理方法的流程图,如图1所示,可以包括如下步骤:
101、若接收到第一事务,则在主数据库中生成与第一事务对应的第一事务快照以及在备份数据库中生成与第一事务对应的第二事务快照。
102、若接收到在第一事务之后触发的预设的第二事务,则在第一事务快照以及第二事务快照之后添加标记信息,标记信息指示在不满足清除条件时,第一事务快照和第二事务快照之后产生的事务快照不会被清除。
103、若接收到在第二事务之后触发的第三事务,则在主数据库中生成与第三事务对应的第三事务快照以及在备份数据库中生成与第三事务对应的第四事务快照。
104、根据第三事务快照和第四事务快照确定在主数据库与备份数据库中执行完第一事务后的数据状态是否一致。
该事务处理方法可以由一种管控系统来执行,该管控系统可以部署在服务器等电子设备中。该管控系统提供了管理上述主数据库和备份数据库的服务。该管控系统可以实现为软件(如应用程序)、进程。
实际应用中,主数据库和备份数据库位于不同的设备中,管控系统可以部署在不同于主数据库和备份数据库所在设备的另一设备中,当然,也可以部署在主数据库所在设备或备份数据库所在设备。
本实施例中,上述第一事务和第三事务一般由业务侧(或者说用户侧)触发,这类事务中会包含一种或多种数据操作,这些数据操作的执行会改变主数据库和备份数据库中的数据状态。上述第二事务是人为预先自定义的一种特殊的事务,并不会对主数据库和备份数据库中的数据进行任何操作,该第二事务的本质作用是标记作用,也即是说,在第二事务中包含的操作并非是如第一事务、第三事务中的各种数据操作,而是一种标记操作。该标记作用的具体含义将在下文中进行说明,这里仅先将第二事务与业务侧自动触发的其他事务相区别。
为便于理解,示例性说明业务侧触发的事务。以转账业务为例,当用户A给用户B转账金额1000元时,会触发与该转账行为对应的事务,假设为上述第一事务,简单来说,该第一事务可以包括两种操作:在用户A的账号中扣除1000元,在用户B的账号中增加1000元。可以理解的是,如果说该第一事务正确执行(或者说正确提交),那就意味着上述两个操作都成功,如果上述两个操作中的任一个不成功,那么该第一事务执行失败,此时,用户A的账号以及用户B的账号都恢复(回滚)到该第一事务之前的状态。假设用户A的账号中原本有3000元,用户B的账号中原本有5000元,那么在执行完第一事务之后,用户A的账号中剩余2000元,用户B的账号中剩余6000元。
可以理解的是,主数据库和备份数据库中都会存储有用户A和用户B的账号及其中剩余的金额。
下面结合图2先示例性说明主数据库和备份数据库执行该第一事务的过程。
如图2中所示,业务侧在T1时刻触发的第一事务被发送至主数据库,主数据库一方面生成包含该第一事务的事务日志,比如图2中示意的事务日志1;另一方面,执行该第一事务。进而,将主数据库中生成的事务日志1在T1’时刻发送即复制到备份数据库中,以使备份数据库根据该事务日志1得知第一事务的存在,执行该第一事务。其中,T1时刻早于T1’时刻。
其中,由于在物理空间上,主数据库与备份数据库往往不在同一位置,主数据库生成事务日志并传输到备份数据库的过程需要一定的时间,因此,备份数据库执行同一事务的时间会晚于主数据库。
假设在执行上述第一事务之前,主数据库和备份数据库中用户A和用户B的账号金额信息如表1所示,在执行上述第一事务之后,主数据库和备份数据库中用户A和用户B的账号金额信息如表2所示。
表1:执行第一事务前主备数据库的数据状态
表2:执行第一事务后主备数据库的数据状态
由上述表1和表2可以看出,正常情况下,主数据库和备份数据库的数据状态是保持一致的。具体地,在执行某事务之前两者的数据状态保持一致,如表1所示;在执行该事务之后两者的数据状态亦保持一致,如表2所示,此时说明主数据库和备份数据库都正确地执行了该事务。
但是,如果备份数据库因为某些原因未能成功地执行上述事务,或者,备份数据库在执行该事务之前,用户A和用户B的账号中的余额与主数据库中的余额并不一致,那么将导致主数据库和备份数据库的数据状态不一致。基于此,假设上述第三事务是从用户A的账号中给用户B转账500元,那么当主数据库和备份数据库执行该第三事务时,主数据库和备份数据库的执行结果也必将不一致。为便于理解,结合表3和表4来说明。
表3:执行第一事务后主备数据库的数据状态
表4:执行第三事务后主备数据库的数据状态
其中,表3中仍旧以前述举例的第一事务——用户A给用户B转账金额1000元,以及用户A的账号中原本有3000元,用户B的账号中原本有5000元为例进行的说明。在表3中,假设主数据库成功地执行了第一事务,但是,备份数据库并未成功执行该第一事务,从而导致主数据库和备份数据库的数据状态不一致。基于此,当第三事务为用户A给用户B转账金额500元时,如表4中所示,由于此时主数据库和备份数据库的数据状态已经不一致,执行该第三事务后主数据库和备份数据库的数据状态仍旧不一致。
由上述示例可见,如果主数据库与备份数据库的数据状态不一致,将导致严重的后果,比如上述示例中示意的用户账号金额发生错误。因此,及时准确地发现主数据库与备份数据库的数据状态不一致的现象非常重要,以便及时地回溯错误原因,纠正错误。
本发明实施例中,检测主数据库与备份数据库的数据状态是否一致所依赖的两个主要因素是:事务快照、第二事务。下面先概括说明这两个因素的作用原理,即为何使用这两个因素来进行主数据库与备份数据库的数据状态一致性检测。
以时间轴的角度来说,如图2中所示意的,主数据库与备份数据库执行同一事务的时间是不同的,因此,在同一时刻,主数据库与备份数据库的数据状态往往是不一致的,因此,依据绝对的时间维度进行主数据库与备份数据库的数据状态一致性查询变得不太可行。具体来说,在上述T1’时刻,主数据库由于已经执行了上述第一事务从而用户A的余额变为2000,用户B的余额变为6000,但是,此时由于备份数据库还未执行完第一事务,用户A的余额仍为3000,用户B的余额仍为5000。由此可见,如果在T1’时刻触发了检测主数据库与备份数据库的数据状态是否一致的事件,检测结果是否定的。但是,如果实际上备份数据库后续也正确地执行了第一事务,执行后备份数据库中用户A的余额变为2000,用户B的余额变为6000,那么事实上,主数据库与备份数据库的数据状态是一致的。由此说明,以绝对的时间维度作为检测点是不合适的。
基于此,因为业务侧触发的多个事务在主数据库和备份数据库中的执行顺序是一致的。因此,本发明实施例中采用了事务这个相对的检测点作为检测依据,其中,以事务作为检测点的意思是指,在主数据库和备份数据库执行由业务侧触发的某事务(比如本发明实施例中假设的第一事务)之后,进行主数据库与备份数据库的数据状态的一致性检测,而该检测点的实现即为通过本文中提供的自定义的第二事务来实现的。
具体来说,假设某时刻,数据库系统的维护人员想要检测此时主数据库和备份数据库的数据状态是否一致,并假设该时刻之前业务侧最后触发的事务为上述第一事务,则该维护人员可以在第一事务之后触发上述第二事务,以便通过该第二事务来标记检测点为第一事务。
以上概括描述了第二事务进行检测点标记的作用,下面概括说明事务快照的作用:
由于某事务的事务快照中记录了执行该事务之前和之后,执行该事务的数据库的数据状态,因此,在某事务先后被提供给主数据库和备份数据库执行时,通过对比主数据库和备份数据库中各自生成的与该事务对应的事务快照,可以得知主数据库和备份数据库执行完该事务时两者的数据状态是否一致。
以上对事务快照和第二事务在检测主数据库和备份数据库的数据状态一致性过程中的作用进行了概括介绍。下面结合图3-图5来示例性详细说明事务快照和第二事务的作用过程,其中,假设用户A的账号中原本有3000元,用户B的账号中原本有5000元,第一事务为用户A给用户B转账金额1000元,第三事务为用户A给用户B转账金额500元。
图3为主数据库和备份数据库对第一事务的执行过程示意图,如图3所示,若接收到第一事务,则在主数据库中的处理过程包括:第一,在主数据库中生成包含第一事务的事务日志,记为日志1。第二,在主数据库中生成与第一事务对应的第一事务快照,记为快照1,其中,第一事务快照中包括执行第一事务前后该主数据库的数据状态,比如图3中示意的:执行第一事务前,用户A的账号中有3000元,用户B的账号中有5000元,执行第一事务后,用户A的账号中有2000元,用户B的账号中有6000元。第三,将事务日志即日志1传输至备份数据库,以使备份数据库根据该事务日志生成与第一事务对应的第二事务快照,记为快照1’,第二事务快照中包括执行第一事务前后备份数据库的数据状态,比如图3中示意的:执行第一事务前,用户A的账号中有3000元,用户B的账号中有5000元,执行第一事务后,用户A的账号中有2000元,用户B的账号中有6000元。
结合前文中的介绍,可以理解的是,日志1中包含第一事务中涉及到的各种数据操作,日志1被传输至备份数据库后,备份数据库执行该日志1中包含的各种数据操作,即完成第一事务的执行。另外,不管是主数据库还是备份数据库,在执行第一事务之前,存储下来此时数据库中用户A和用户B账号中的金额,并且,在执行第一事务之后,再存储下来此时数据库中用户A和用户B账号中的金额,以便生成上述快照1和快照1’。主数据库、备份数据库中可以设置快照列表,用于顺序地存储依次生成的各个事务快照。
实际应用中,快照1和快照1’中除了包含上述金额数据外,还可以包括第一事务的事务编号、接收时间等信息。
在第一事务之后,假设数据库维护人员触发了预设的第二事务。
图4为主数据库和备份数据库对第二事务的执行过程示意图,如图4中所示,响应于第二事务的触发,由于第二事务中包含的操作行为是标记操作,具体的,是在事务快照列表中插入标记信息,从而,在主数据库中的处理过程包括:第一,在主数据库中生成包含第二事务的事务日志,记为日志2。第二,在主数据库中执行该第二事务从而在主数据库的事务快照列表中存入预设的标记信息。由于第二事务是发生在第一事务之后的事务,因此,第二事务对应的标记信息被添加到快照1之后。图4中,该标记信息记为标记a。第三,将日志2传输至备份数据库。备份数据库根据该日志2再现第二事务,从而在备份数据库的事务快照列表中,在快照1’后添加预设的标记信息:标记a。
值得说明的是,正如前文所述的,由图4的示意可知,第二事务并不会对主数据库和备份数据库的数据进行修改;另外,主数据库生成的事务日志中准确地记录了各个事务的发生顺序,从而备份数据库在根据事务日志再现主数据库执行过的各个事务时,各个事务的执行顺序不会改变,所以第二事务对应的标记信息会准确地添加到第一事务对应的事务快照之后;再者,第二事务被配置为具有如下属性:第二事务对应的标记信息在不满足清除条件时,位于在该标记信息之后的事务快照不会被清除,以便基于标记信息之后的事务快照检测在执行完第二事务触发前的事务(上述举例中为第一事务)时,主数据库和备份数据库的数据状态是否一致。
可选地,所述清除条件包括如下任一种:标记信息达到设定的生命周期,标记信息被删除。其中,标记信息达到设定的生命周期,也可以理解为:为第二事务提供了定时管理接口和创建接口,每次需要触发第二事务时,维护人员通过创建接口触发第二事务,并通过定时管理接口设置对应的生命周期,第二事务自触发时刻开始启动定时功能,定时达到该生命周期时,被启动的该第二事务的作用失效。其中,标记信息被删除,可以理解为:为第二事务提供了删除接口,当需要删除被触发的某个第二事务时,维护人员可以通过该删除接口来删除该第二事务,即删除该第二事务对应的标记信息。
由于第二事务也是一种特殊的事务,那么对诸如第一事务等业务侧触发的事务的一些处理逻辑同样可以适用于第二事务。从而,可选地,在所述第一事务快照以及第二事务快照之后添加标记信息,可以实现为:
在主数据库中生成与第二事务对应的第五事务快照以及在备份数据库中生成与第二事务对应的第六事务快照,第五事务快照和第六事务快照中包括所述标记信息。
而第五事务快照和第六事务快照的生成,与上述第一事务快照和第二事务快照的生成方式类似,具体为:在主数据库中生成包含第二事务的事务日志,即日志2,在主数据库中生成与第二事务对应的第五事务快照,将日志2传输至备份数据库,以使备份数据库根据日志2生成与第二事务对应的第六事务快照。
在第二事务之后,假设业务侧又触发了第三事务。
图5为主数据库和备份数据库对第三事务的执行过程示意图,如图5中所示,响应于第三事务的触发,在主数据库中的处理过程包括:第一,在主数据库中生成包含第三事务的事务日志,记为日志3。第二,在主数据库中生成与第三事务对应的第三事务快照,记为快照3,其中,第三事务快照中包括执行第三事务前后该主数据库的数据状态,比如图5中示意的:执行第三事务前,用户A的账号中有2000元,用户B的账号中有6000元,执行第三事务后,用户A的账号中有1500元,用户B的账号中有6500元。第三,将日志3传输至备份数据库。备份数据库根据该日志3生成与第三事务对应的第四事务快照,记为快照3’,第四事务快照中包括执行第三事务前后备份数据库的数据状态,比如图5中示意的:执行第三事务前,用户A的账号中有2000元,用户B的账号中有6000元,执行第三事务后,用户A的账号中有1500元,用户B的账号中有6500元。
实际应用中,在第一事务之后触发第二事务,并不意味着在第二事务触发时刻就需要执行检测当前主数据库和备份数据库的数据状态是否一致的操作,实际上,可以人为触发什么时候执行检测当前主数据库和备份数据库的数据状态是否一致的操作。可选地,可以预先配置自第二事务触发时刻开始,预设时长后执行检测当前主数据库和备份数据库的数据状态是否一致的操作。可选地,也可以由维护人员人为触发执行检测当前主数据库和备份数据库的数据状态是否一致的操作。只是,不管以何种方式触发该检测操作,检测点根据第二事务对应的标记信息而被确定为是第一事务。
另外,实际应用中,由于可能需要在不同时间检测主数据库和备份数据库的数据状态是否一致,因此,需要在不同时间触发第二事务,为了能够区分不同时间触发的第二事务,每次触发第二事务时,可以由维护人员为被触发的第二事务编辑名称。从而,当采用由维护人员人为触发上述检测操作的方式时,维护人员可以触发包含某第二事务对应的名称的查询请求。而且,第二事务对应的标记信息中也可以包括相应第二事务的名称,从而区分不同第二事务的标记信息。
基于此,仍以图3-图5中的举例来说,可选地,若接收到与所述第二事务对应的查询请求,则根据第三事务快照(快照3)和第四事务快照(快照3’)确定在主数据库与备份数据库中执行完第一事务后的数据状态是否一致。
具体地,根据快照3确定在主数据库中执行完第一事务后的第一数据状态,根据快照3’确定在备份数据库中执行完第一事务后的第二数据状态,若第一数据状态与第二数据状态一致,则确定在主数据库与备份数据库中执行完第一事务后的数据状态一致,反之,不一致。其中,由图5可知,快照3中记录了主数据库在第三事务执行前后的数据状态,其中,第三事务执行前的数据状态亦为第一事务执行后的数据状态,从而,第一数据状态为:用户A的账号中有2000元,用户B的账号中有6000元。同理,第二数据状态为:用户A的账号中有2000元,用户B的账号中有6000元。
值得说明的是,假设在上述第三事务之后,还触发了第四事务、第五事务,从而,以主数据库为例,还生成了与第四事务和第五事务分别对应的快照4和快照5。并且,假设当前时刻为备份数据库执行完第五事务后的某时刻T,并假设此时并未产生新的事务,那么假设在时刻T,维护人员向主数据库和备份数据库触发了对应于上述第二事务的查询请求,则一种可选的执行方式是:主数据库和备份数据库都在各自存储的快照列表中,按照倒序的顺序,依次遍历已经存储的各事务快照,直到遇到对应于第二事务的标记信息,其中,遇到该标记信息前最后遍历到的事务快照即为用于检测主数据库和备份数据库的数据状态是否一致的事务快照。结合上述举例即为:主数据库依次遍历快照5、快照4、快照3、标记信息,最终根据快照3完成执行第一事务后主数据库与备份数据库的数据状态是否一致的检测。按照这种遍历方式,还可以检测出在第一事务之后执行的一些事务是否发生执行异常。
另外,还值得说明的是,前文中提到,为避免大量的事务快照对存储资源的占用,实际应用中,事务快照在生成之后的短时间内就会被自动清除。而且,可以理解的是,事务快照的清除顺序与对应事务的生成顺序一致,即先生成的事务快照也会被先清除。但是,在本发明实施例中,第二事务的存在会更改事务快照的清除逻辑。该更改概括来说就是,在顺序依次清除各事务快照的过程中,如果遇到第二事务对应的标记信息,而且该标记信息并未满足清除条件,则暂停清除该标记信息后面的其他事务快照,直到该标记信息的清除条件满足,才会清除该标记信息及其后面的其他事务快照。
举例来说,假设主数据库的快照列表中依次包括如下信息:
快照a、快照b、标记信息、快照c、快照d。
那么,响应于快照清除事件,依次清除快照a、快照b,之后遇到标记信息,暂停清除,比如之后某时刻该标记信息被删除从而满足了标记信息的清除条件,则继续清除快照c、快照d。其中,快照清除事件可以是数据库自动触发的,比如可以设定自每个事物快照生成开始,达到设定时长即触发针对该事务快照的快照清除事件,当然,具体的实现方式不以此为限。
综上,基于上述本发明实施例提供的方案,通过预先定义一种特定的事务(即上述第二事务)以及事务快照的方式,来实现主数据库和备份数据库的数据状态的一致性检测。由于该特定的事务并不涉及数据修改操作,只需要在主数据库和备份数据库上标记一个事务快照作为检测点,确保这个检测点之后的事务快照不会清除掉,就可以实现数据状态的一致性检测了,创建该特定事务所需要的操作非常轻量化。另外,在进行事务快照清除时,也只需在满足清除条件时将该特定事务对应的标记信息清除掉,便会让清除操作能够继续,不涉及额外的数据变更,操作非常轻量化,实现方便。
以下将详细描述本发明的一个或多个实施例的事务处理装置。本领域技术人员可以理解,这些事务处理装置均可使用市售的硬件组件通过本方案所教导的步骤进行配置来构成。
图6为本发明一实施例提供的事务处理装置的结构示意图,如图6所示,该事务处理装置包括:第一事务处理模块11、第二事务处理模块12、第三事务处理模块13、数据状态检测模块14。
第一事务处理模块11,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照。
第二事务处理模块12,用于若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除。
第三事务处理模块13,用于若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照。
数据状态检测模块14,用于根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
可选地,所述清除条件包括如下任一种:所述标记信息达到设定的生命周期,所述标记信息被删除。
可选地,所述数据状态检测模块14具体用于:根据所述第三事务快照确定在所述主数据库中执行完所述第一事务后的第一数据状态;根据所述第四事务快照确定在所述备份数据库中执行完所述第一事务后的第二数据状态;若所述第一数据状态与所述第二数据状态一致,则确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态一致。
可选地,所述第二事务处理模块12具体可以用于:在所述主数据库中生成与所述第二事务对应的第五事务快照以及在所述备份数据库中生成与所述第二事务对应的第六事务快照,所述第五事务快照和所述第六事务快照中包括所述标记信息。
可选地,所述第二事务处理模块12具体可以用于:在所述主数据库中生成包含所述第二事务的事务日志;在所述主数据库中生成与所述第二事务对应的第五事务快照;将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第二事务对应的第六事务快照。
可选地,所述数据状态检测模块14具体用于:若接收到与所述第二事务对应的查询请求,则根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
可选地,所述装置还包括:快照清除模块,用于若发生快照清除事件,清除所述第一事务快照和所述第二事务快照;若检测到所述标记信息已满足所述清除条件,则清除所述标记信息以及所述第三事务快照和所述第四事务快照。
可选地,所述第一事务处理模块11具体用于:在所述主数据库中生成包含所述第一事务的事务日志;在所述主数据库中生成与所述第一事务对应的所述第一事务快照,所述第一事务快照中包括执行所述第一事务前后所述主数据库的数据状态;将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第一事务对应的所述第二事务快照,所述第二事务快照中包括执行所述第一事务前后所述备份数据库的数据状态。
可选地,所述第三事务处理模块13具体用于:在所述主数据库中生成包含所述第三事务的事务日志;在所述主数据库中生成与所述第三事务对应的所述第三事务快照,所述第三事务快照中包括执行所述第三事务前后所述主数据库的数据状态;将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第三事务对应的所述第四事务快照,所述第四事务快照中包括执行所述第三事务前后所述备份数据库的数据状态。
图6所示事务处理装置可以执行前述图1至图5所示实施例中提供的方法,本实施例未详细描述的部分,可参考前述实施例的相关说明,在此不再赘述。
在一个可能的设计中,上述图6所示的事务处理装置的结构可实现为一电子设备。如图7所示,该电子设备可以包括:处理器21、存储器22。其中,存储器22上存储有可执行代码,当所述可执行代码被处理器21执行时,至少使处理器21可以实现如前述图1至图5所示实施例中提供的事务处理方法。
该可执行代码中包括与前文中数据库服务所需执行的各步骤相对应的代码。
其中,该电子设备的结构中还可以包括通信接口23,用于与其他设备或通信网络通信。
其中,处理器21可以是中央处理器(Central Processing Unit,简称CPU),也可以是现场可编程门阵列(Field-Programmable Gate Array,简称FPGA)、图形处理器(Graphics Processing Unit,简称GPU)、网络处理器(network process units,简称NPU)、人工智能(Artificial Intelligence,简称AI)芯片等具有计算能力的器件。
另外,本发明实施例提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行前述图1至图5所示实施例中提供的事务处理方法。
图8为本发明一实施例提供的数据库系统的组成示意图,如图7所示,该数据库系统包括主数据库、备份数据库以及管控系统。
该管控系统,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
其中,该管控系统其实可以理解为是提供数据库访问功能的程序。该管控系统可以部署在主数据库所处设备中,也可以部署在其他设备中。
可选地,该管控系统还可以用于执行前述图1至图5所示实施例中涉及到的各个步骤。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的各个模块可以是或者也可以不是物理上分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助加必需的通用硬件平台的方式来实现,当然也可以通过硬件和软件结合的方式来实现。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以计算机产品的形式体现出来,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (13)
1.一种事务处理方法,其特征在于,包括:
若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;
若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;
若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;
根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
2.根据权利要求1所述的方法,其特征在于,所述清除条件包括如下任一种:
所述标记信息达到设定的生命周期,所述标记信息被删除。
3.根据权利要求1所述的方法,其特征在于,所述根据所述第三事务快照和所述第四事务快照确定所述主数据库与所述备份数据库在执行完所述第一事务后的数据状态是否一致,包括:
根据所述第三事务快照确定在所述主数据库中执行完所述第一事务后的第一数据状态;
根据所述第四事务快照确定在所述备份数据库中执行完所述第一事务后的第二数据状态;
若所述第一数据状态与所述第二数据状态一致,则确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态一致。
4.根据权利要求1所述的方法,其特征在于,所述根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致,包括:
若接收到与所述第二事务对应的查询请求,则根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
5.根据权利要求1所述的方法,其特征在于,所述在所述第一事务快照以及所述第二事务快照之后添加标记信息,包括:
在所述主数据库中生成与所述第二事务对应的第五事务快照以及在所述备份数据库中生成与所述第二事务对应的第六事务快照,所述第五事务快照和所述第六事务快照中包括所述标记信息。
6.根据权利要求5所述的方法,其特征在于,所述在所述主数据库中生成与所述第二事务对应的第五事务快照以及在所述备份数据库中生成与所述第二事务对应的第六事务快照,包括:
在所述主数据库中生成包含所述第二事务的事务日志;
在所述主数据库中生成与所述第二事务对应的第五事务快照;
将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第二事务对应的第六事务快照。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若发生快照清除事件,清除所述第一事务快照和所述第二事务快照;
若检测到所述标记信息已满足所述清除条件,则清除所述标记信息以及所述第三事务快照和所述第四事务快照。
8.根据权利要求1所述的方法,其特征在于,所述在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照,包括:
在所述主数据库中生成包含所述第一事务的事务日志;
在所述主数据库中生成与所述第一事务对应的所述第一事务快照,所述第一事务快照中包括执行所述第一事务前后所述主数据库的数据状态;
将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第一事务对应的所述第二事务快照,所述第二事务快照中包括执行所述第一事务前后所述备份数据库的数据状态。
9.根据权利要求1所述的方法,其特征在于,所述在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照,包括:
在所述主数据库中生成包含所述第三事务的事务日志;
在所述主数据库中生成与所述第三事务对应的所述第三事务快照,所述第三事务快照中包括执行所述第三事务前后所述主数据库的数据状态;
将所述事务日志传输至所述备份数据库,以使所述备份数据库根据所述事务日志生成与所述第三事务对应的所述第四事务快照,所述第四事务快照中包括执行所述第三事务前后所述备份数据库的数据状态。
10.一种事务处理装置,其特征在于,包括:
第一事务处理模块,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;
第二事务处理模块,用于若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;
第三事务处理模块,用于若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;
数据状态检测模块,用于根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
11.一种电子设备,其特征在于,包括:存储器、处理器;其中,所述存储器上存储有可执行代码,当所述可执行代码被所述处理器执行时,使所述处理器执行如权利要求1至9中任一项所述的事务处理方法。
12.一种非暂时性机器可读存储介质,其特征在于,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如权利要求1至9中任一项所述的事务处理方法。
13.一种数据库系统,其特征在于,包括:
主数据库、备份数据库以及管控系统;
所述管控系统,用于若接收到第一事务,则在主数据库中生成与所述第一事务对应的第一事务快照以及在备份数据库中生成与所述第一事务对应的第二事务快照;若接收到在所述第一事务之后触发的预设的第二事务,则在所述第一事务快照以及所述第二事务快照之后添加标记信息,所述标记信息指示在不满足清除条件时,所述第一事务快照和所述第二事务快照之后产生的事务快照不会被清除;若接收到在所述第二事务之后触发的第三事务,则在所述主数据库中生成与所述第三事务对应的第三事务快照以及在所述备份数据库中生成与所述第三事务对应的第四事务快照;根据所述第三事务快照和所述第四事务快照确定在所述主数据库与所述备份数据库中执行完所述第一事务后的数据状态是否一致。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010176011.0A CN113391884B (zh) | 2020-03-13 | 2020-03-13 | 事务处理方法、装置、设备、存储介质、数据库系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010176011.0A CN113391884B (zh) | 2020-03-13 | 2020-03-13 | 事务处理方法、装置、设备、存储介质、数据库系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113391884A true CN113391884A (zh) | 2021-09-14 |
CN113391884B CN113391884B (zh) | 2024-07-02 |
Family
ID=77616644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010176011.0A Active CN113391884B (zh) | 2020-03-13 | 2020-03-13 | 事务处理方法、装置、设备、存储介质、数据库系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113391884B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160147614A1 (en) * | 2014-11-25 | 2016-05-26 | Kaushal MITTAL | Synchronized Backup and Recovery of Database Systems |
CN106126658A (zh) * | 2016-06-28 | 2016-11-16 | 电子科技大学 | 一种基于虚拟存储器快照的数据库检查点构建方法 |
US20180143881A1 (en) * | 2016-11-21 | 2018-05-24 | Sap Se | Logical Equivalent Replication with Snapshot Based Failback of Database Systems |
CN109684048A (zh) * | 2018-11-22 | 2019-04-26 | 华为技术有限公司 | 事务提交系统中处理事务的方法及装置 |
CN110121712A (zh) * | 2017-12-05 | 2019-08-13 | 华为技术有限公司 | 一种日志管理方法、服务器和数据库系统 |
-
2020
- 2020-03-13 CN CN202010176011.0A patent/CN113391884B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160147614A1 (en) * | 2014-11-25 | 2016-05-26 | Kaushal MITTAL | Synchronized Backup and Recovery of Database Systems |
CN106126658A (zh) * | 2016-06-28 | 2016-11-16 | 电子科技大学 | 一种基于虚拟存储器快照的数据库检查点构建方法 |
US20180143881A1 (en) * | 2016-11-21 | 2018-05-24 | Sap Se | Logical Equivalent Replication with Snapshot Based Failback of Database Systems |
CN110121712A (zh) * | 2017-12-05 | 2019-08-13 | 华为技术有限公司 | 一种日志管理方法、服务器和数据库系统 |
CN109684048A (zh) * | 2018-11-22 | 2019-04-26 | 华为技术有限公司 | 事务提交系统中处理事务的方法及装置 |
Non-Patent Citations (1)
Title |
---|
黄晓微;陈玲;魏玮;徐世莲;: "基于快照日志分析的数据同步方法", 后勤工程学院学报, no. 02, 30 June 2006 (2006-06-30) * |
Also Published As
Publication number | Publication date |
---|---|
CN113391884B (zh) | 2024-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7996363B2 (en) | Real-time apply mechanism in standby database environments | |
US20150213100A1 (en) | Data synchronization method and system | |
US11880386B1 (en) | Method and system for using before images of replicated changes from a source database with current target database images read from the target database when continuously comparing two databases which are actively being kept synchronized | |
CN111078667B (zh) | 一种数据迁移的方法以及相关装置 | |
CN105302667B (zh) | 基于集群架构的高可靠性数据备份与恢复方法 | |
MX2013015361A (es) | Manejo de almacenamiento virtual duplicado en sitios de recuperacion. | |
US10705920B1 (en) | Method and system for implementing current, consistent, and complete backups | |
US11748215B2 (en) | Log management method, server, and database system | |
US20120158652A1 (en) | System and method for ensuring consistency in raid storage array metadata | |
CN111404737B (zh) | 一种容灾处理方法以及相关装置 | |
CN114791901A (zh) | 数据处理方法、装置、设备及存储介质 | |
US20210124762A1 (en) | Automatic rollback to target for synchronous replication | |
CN114756410B (zh) | 一种双机热备系统的数据恢复方法、装置及介质 | |
CN113391884A (zh) | 事务处理方法、装置、设备、存储介质、数据库系统 | |
CN106997305B (zh) | 一种事务处理方法与装置 | |
CN108829779B (zh) | 一种数据处理的方法以及相关设备 | |
CN106648985A (zh) | 一种文本数据库的容灾修复方法及装置 | |
CN112181729A (zh) | 一种虚拟机备份控制装置、系统及方法 | |
JP7394265B2 (ja) | ハイスループットストリーミングデータの同期複製 | |
CN113609104B (zh) | 一种部分故障的键值对分布式存储系统访问方法及装置 | |
CN115794950A (zh) | 一种快照库处理方法、装置、电子设备和存储介质 | |
KR101786874B1 (ko) | 데이터의 일관성을 보장하는 상태기기 기반의 복제 및 체크포인트데이터와 복제로그를 이용한 분산 복구를 처리하는 데이터 복제 방법 및 데이터 저장 시스템 | |
CN117971975A (zh) | 分布式数据库的跨表事务支持方法、装置及可读存储介质 | |
KR101713537B1 (ko) | 데이터의 일관성을 보장하는 상태기기 기반의 복제 및 체크포인트데이터와 복제로그를 이용한 분산 복구를 처리하는 데이터 복제 방법 및 데이터 저장 시스템 | |
CN117785546A (zh) | 数据库备份的方法、系统和计算设备集群 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |