CN116107807A - 数据库中数据备份时获取全局一致性点位的方法及装置 - Google Patents

数据库中数据备份时获取全局一致性点位的方法及装置 Download PDF

Info

Publication number
CN116107807A
CN116107807A CN202310033262.7A CN202310033262A CN116107807A CN 116107807 A CN116107807 A CN 116107807A CN 202310033262 A CN202310033262 A CN 202310033262A CN 116107807 A CN116107807 A CN 116107807A
Authority
CN
China
Prior art keywords
transaction
data
global
commit
backup
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
Application number
CN202310033262.7A
Other languages
English (en)
Other versions
CN116107807B (zh
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.)
Beijing Great Opensource Software Co ltd
Original Assignee
Beijing Great Opensource Software Co 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 Beijing Great Opensource Software Co ltd filed Critical Beijing Great Opensource Software Co ltd
Priority to CN202310033262.7A priority Critical patent/CN116107807B/zh
Publication of CN116107807A publication Critical patent/CN116107807A/zh
Application granted granted Critical
Publication of CN116107807B publication Critical patent/CN116107807B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明公开了数据库中数据备份时获取全局一致性点位的方法及装置,其中方法包括:该方法包括:全局备份模块接收全局数据一致性备份请求,向各个数据协调节点发送一致性备份指令;所述数据协调节点接收一致性备份指令,对事务请求进行处理;全局备份模块向所有数据协调节点发送事务状态查询指令,并等待全局事务处于一致性状态;全局备份模块向所有数据存储节点发送数据状态查询指令,并等待全局数据处于一致性状态;全局备份模块获取全局一致性点位信息,写入到数据备份节点进行持久化存储。在分布式备份全局一致性点位获取过程中,只对读写类事务的事务提交阶段进行延迟提交处理,降低获取全局一致性点位时对分布式数据库系统读写请求的影响。

Description

数据库中数据备份时获取全局一致性点位的方法及装置
技术领域
本发明涉及分布式数据库技术领域,具体涉及数据库中数据备份时获取全局一致性点位的方法及装置。
背景技术
随着移动互联网的推广,各种数据呈指数级增长,传统的单机数据库已经无法满足当今日益增长的数据量的存储需求,分布式数据库系统慢慢开始替代单机系统。
在数据库系统中,因机器环境异常、或者人为操作失当等各类原因,可能造成数据库无法启动,数据库数据异常等各种故障,影响数据安全。定期对数据库系统进行备份操作是一个常用的故障风险防范的手段。
在传统的单机数据库系统中,数据库备份可以通过物理文件备份、或者逻辑日志备份等方法对数据库的数据进行备份操作,无论是物理备份还是逻辑备份,一般都要求最终备份的结果是事务原子性和一致性的。在单机系统中,可以通过锁的方式实现备份数据的一致性。在分布式数据库系统中,数据分散部署在不同的存储介质中,传统单机系统的锁机制,并不适合复杂的分布式部署场景。
在分布式数据库系统中,数据分散部署在不同的存储介质中,对数据进行备份过程中,要求对每个存储介质的数据保证原子性和一致性,这部分可以依赖单机系统中原有的备份机制;也要求对所有的存储介质保持分布式全局的数据原子性和一致性。如何解决分布式数据库系统备份过程中,全局数据一致性点的获取,以及一致性点获取过程中,如何尽可能降低对分布式数据库系统处理业务读写请求的影响,是分布式数据库进行备份需要考虑的重点问题。
发明内容
本发明提供数据库中数据备份时获取全局一致性点位的方法及装置,以解决现有技术中存在的上述问题。
本发明提供数据库中数据备份时获取全局一致性点位的方法,该方法包括:
S100,全局备份模块接收全局数据一致性备份请求,向各个数据协调节点发送一致性备份指令;
S200,所述数据协调节点接收一致性备份指令,对事务请求进行处理;
S300,全局备份模块向所有数据协调节点发送事务状态查询指令,并等待全局事务处于一致性状态;全局备份模块向所有数据存储节点发送数据状态查询指令,并等待全局数据处于一致性状态;
S400,全局备份模块获取全局一致性点位信息,写入到数据备份节点进行持久化存储。
优选的,所述S200包括:
S201,判断事务在数据协调节点接收一致性备份指令之前,是否进入到数据提交阶段;若是,则执行S202步骤,若否,则执行S203步骤;
S202,不进行延迟提交的处理;
S203,根据事务数据的请求类型将事务进行类型划分,划分为以下类型事务中的一种:只读事务、读写事务、数据结构变更事务;
S204,若数据协调节点接收到事务提交请求,且事务类型为只读事务时,将不做任何处理,事务继续完成提交操作;
S205,若数据协调节点接收到事务提交请求,且事务类型为读写事务或数据结构变更事务时,阻塞事务提交请求;
S206,若数据协调节点阻塞事务提交请求后,全局备份模块在设定的时间点向数据协调节点发送指令,将被阻塞的事务提交请求,完成提交,并不再阻塞新的事务提交请求。
优选的,所述S200之前包括:
S500,若事务是只读事务,事务进入提交阶段后,不记录该事务的提交信息,事务完成提交后,也不更新事务的提交信息;若事务是读写事务或数据结构变更事务,进入事务提交阶段时,在数据协调节点中更新全局已经进入事务提交阶段的事务数量信息,添加本事务信息,在事务完成提交后,更新全局已经进入事务提交阶段的事务数量信息,删减本事务信息;
S600,在数据协调节点中设置全局已经进入事务提交阶段的事务数量信息的展示接口;
S700,全局备份模块发送全局已经进入事务提交阶段的事务数量信息的查询命令,查询各个数据协调节点中处于事务提交阶段的事务数量信息;全局备份模块等待各个数据协调节点中不存在任何处于事务提交阶段的事务。
优选的,所述S200之前包括:
S800,所述数据协调节点在接收一致性备份指令之前,判断数据协调节点的状态是否异常,若异常,全局备份模块跳过对异常数据协调节点发送一致性备份指令,跳过对所述异常数据协调节点的全局已经进入事务提交阶段的事务数量信息的查询和等待,继续执行一致性备份;
S900,若所述数据协调节点在异常之前,已经执行了读写事务、或者数据结构变更事务的事务提交操作,所述事务提交操作通过数据存储节点进行数据状态查询获取,但所述事务提交无法从异常数据协调节点中获取事务执行状态;
相应的,S300包括:
S301,全局备份模块在等待所有接收一致性备份请求指令的数据协调节点,没有处于事务提交阶段的读写事务或者数据结构变更事务后,向数据存储节点发送数据状态查询指令,查询处于数据提交阶段的数据信息,所述数据节点获取数据状态,向全局备份模块发送数据状态信息;
S302,全局备份模块等待所有数据存储节点不存在任何处于数据提交阶段的数据。
优选的,所述S200中,数据协调节点接收一致性备份指令,包括:
S207,所述数据协调节点接收到一致性备份指令后,若发生状态异常,所述数据协调节点被阻塞的事务提交请求继续执行;
S208,所述数据协调节点接收到一致性备份指令前,若发生状态异常,在一致性备份过程中,所述数据协调节点恢复并继续执行新的事务请求,全局备份模块监听数据协调节点的变化,在一致性备份指令开始后,数据协调节点发生异常状态后,终止当前一致性备份请求,自动重新开启新的一致性备份请求。
优选的,所述S300包括:
S303,全局备份模块向所有数据存储节点发送一致性点位查询请求;
S304,各个数据存储节点在接收到一致性点位查询请求后,向全局备份模块发送本节点的数据点位信息;
相应的,S400包括:
S401,全局备份模块接收所有数据存储节点的点位信息后,将所述的点位信息序列化为分布式全局一致性点位信息;
S402,全局备份模块将全局一致性点位信息写入到数据备份节点中,进行持久化存储。
本发明还提供数据库中数据备份时获取全局一致性点位的装置,该装置包括:
事务延迟提交模块,用于阻塞数据协调节点的事务提交请求;以及更新数据协调节点的进入事务提交请求的事务数量信息;以及显示数据协调节点的进入事务提交请求的事务数量信息;
全局备份模块,用于接收全局数据一致性点位请求,并向数据协调节点的事务延迟提交模块发送一致性备份指令;等待分布式数据库处于全局一致性状态;查询所有数据存储节点的点位信息,序列化并持久化写入到数据备份节点;
其中,所述事务提交请求包括:只读事务提交请求、读写事务提交请求、数据结构变更事务提交请求;相应的,所述进入事务提交请求包括:进入提交阶段的读写事务、进入提交阶段的数据结构变更事务。
优选的,所述事务延迟提交模块,接收到数据协调节点的事务提交请求时,判断事务的类型;如果是只读事务提交请求,不进行任何处理,事务可直接完成提交操作;如果是读写事务提交请求、或者是数据结构变更事务提交请求,在事务进入提交阶段时,更新所在数据协调节点中全局进入事务提交请求的事务数量,添加本事务,在事务完成提交后,再次更新所在数据协调节点中全局进入事务提交请求的事务数量,删减本事务。
优选的,数据协调节点在接收全局备份模块发送的一致性备份指令后,所述事务延迟提交模块切换到事务延迟提交状态;切换延迟提交状态后,只读事务可以正常完成提交操作;切换延迟提交状态后,读写事务、数据结构变更事务进入事务提交阶段时,阻塞事务的提交操作,全局进入事务提交请求的事务数量,不再更新添加本事务;
在一致性备份点位成功获取之后,或者一致性备份终止之后,所述事务延迟提交模块和全局备份模块关闭发送一致性备份指令的链接,或者因故障自动关闭该链接,事务延迟提交模块将自动切换为非事务延迟提交状态;
切换为非事务延迟提交状态后,数据协调节点中被阻塞的事务继续执行,完成提交操作。
优选的,所述全局备份模块,在接收一致性备份请求后,触发启动获取全局一致性点位的任务;在启动所述获取全局一致性点位任务后,获取所有处于活跃状态的数据协调节点,并向所述数据协调节点发送一致性备份指令;
所述全局备份模块监控数据协调节点的状态;如果数据协调节点故障,所述全局备份模块更新数据节点状态,从活跃状态列表中删减故障节点;如果故障协调节点从故障中恢复,所述全局备份模块更新数据节点,将恢复的协调加入到活跃状态列表中;所述全局备份模块从活跃状态列表中获取所有活跃状态的数据协调节点。
优选的,所述全局备份模块在向所有活跃状态的数据协调节点发送一致性备份指令后,等待分布式数据库进入到一个全局备份一致性状态;
活跃数据协调节点在接收全局一致性备份指令后,切换到事务延迟提交状态,新的读写事务提交请求、和新的数据结构变更事务提交请求,被阻塞提交,全局备份模块查询所有活跃数据协调节点中进入事务提交阶段的事务数量,并等待所有活跃数据协调节点中进入事务提交阶段的事务数量为空时,所述数据活跃协调节点进入到一致性状态;
存在非活跃数据协调节点未能接收到全局一致性备份指令时,所述非活跃数据协调节点因故障也不能处理新的事务提交请求,但所述非活跃事务协调节点故障之前,存在未完成提交的事务,全局备份模块不能获取到所述未提交的事务的状态,全局备份模块进一步从所有数据存储节点中查询数据的提交状态;
所有活跃数据协调节点中已经等待进入事务提交阶段的事务数量为空,所述活跃数据协调节点中不存在数据提交状态的事务;
全局备份模块通过等待所有数据存储节点中查询数据的提交状态的数量,等待非活跃数据协调节点完成事务的提交状态,所述非活跃数据协调节点中的事务进入到一致性状态。
优选的,全局备份模块监听数据协调节点的活跃状态切换信息,自动处理数据协调节点故障场景;
存在活跃数据协调节点,在获取全局一致性点位期间,因故障原因,变成非活跃数据协调节点,也存在非活跃数据协调节点,在获取全局一致性点位期间,节点从故障中恢复,重新切换为活跃数据协调节点,数据协调节点在获取全局一致性点位期间,发生活跃状态切换,全局备份模块无法获取准确的全局一致性点位信息,存在数据协调节点,在获取全局一致性点位期间,发生多次活跃状态切换,并最终和初始获取全局一致性点位时间点时,状态一致,全局备份模块通过监听数据节点的状态,获取每一次数据协调节点的状态切换,并更新全局数据协调节点的活跃状态视图标记号;
全局备份模块在获取全局备份一致性点开始时间点,记录当前全局数据协调节点的活跃状态视图标记号,并在等待获取全局备份一致性点过程中,检查实时的全局数据协调节点活跃状态视图标记号;
如果全局数据协调节点活跃状态视图标记号发生变化,全局备份模块终止本次全局备份一致性点位获取任务。
优选的,当出现全局数据协调节点活跃状态视图标记号发生变化的场景,终止获取全局备份一致性点位任务时,自动重新开启新的全局备份一致性点位获取任务;
全局备份模块通过自动重启一致性点位获取任务,能自动过滤部分非频繁故障场景,提升备份的整体易用性。
优选的,全局备份一致点位过程中需要降低对分布式数据库本身数据读写请求的影响,减少数据协调节点中被阻塞提交的事务的阻塞时间;
全局备份模块在等待分布式数据库进入到一个全局备份一致性状态的过程中,如果存在大事务提交操作,等待时间会较长,全局备份模块在等待过程中设置一个等待时间阈值,超出等待时间阈值后,全局备份模块终止本次全局备份一致性点位获取任务,并自动重新开启新的全局备份一致性点位获取任务;
全局备份模块通过自动重启一致性点位获取任务,能自动处理部分长事务场景,提升备份的整体易用性。
优选的,所述全局备份模块在获取到全局备份一致性状态后,向所有数据存储节点发送数据点位信息请求;
数据存储节点在接收到全局备份模块的数据点位信息请求后,将节点本身的数据点位信息发送给全局备份模块;
全局备份模块在接收到所有数据存储节点的数据点位信息后,进行序列化处理,生成全局一致性备份点位信息;
全局备份模块将全局一致性备份点位信息,通过执行SQL语句的方式,持久化写入到数据备份节点的备份一致性点位系统数据表中;
进一步,通过查询数据备份节点的备份一致性点位系统数据表的数据,显示一次全局数据备份中全局数据一致性点位信息。
与现有技术相比,本发明具有以下优点:
本发明提供数据库中数据备份时获取全局一致性点位的方法,该方法包括:全局备份模块接收全局数据一致性备份请求,向各个数据协调节点发送一致性备份指令;所述数据协调节点接收一致性备份指令,对事务请求进行处理;全局备份模块向所有数据协调节点发送事务状态查询指令,并等待全局事务处于一致性状态;全局备份模块向所有数据存储节点发送数据状态查询指令,并等待全局数据处于一致性状态;全局备份模块获取全局一致性点位信息,写入到数据备份节点进行持久化存储。在分布式备份全局一致性点位获取过程中,只对读写类事务的事务提交阶段进行延迟提交处理,降低获取全局一致性点位过程中对分布式数据库系统本身处理业务读写请求的影响;对延迟提交等待处理时间进行优化,针对存在大事务提交场景,自动将等待时间切割,每次仅需等待不大于特定阈值的时间,降低大事务对延迟提交的影响;对故障处理机制进行优化,自动监控节点状态变化,并在状态发生变化后自动重试,降低故障对延迟提交和备份一致性点获取的影响,并提升易用性。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为本发明实施例中数据库中数据备份时获取全局一致性点位的方法的流程图;
图2为本发明实施例中数据协调节点接收一致性备份指令对事务请求进行处理的方法流程图;
图3为本发明实施例中数据库中数据备份时获取全局一致性点位的装置的结构示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
本发明实施例提供了数据库中数据备份时获取全局一致性点位的方法,请参照图1,该方法包括以下步骤:
S100,全局备份模块接收全局数据一致性备份请求,向各个数据协调节点发送一致性备份指令;
S200,所述数据协调节点接收一致性备份指令,对事务请求进行处理;
S300,全局备份模块向所有数据协调节点发送事务状态查询指令,并等待全局事务处于一致性状态;全局备份模块向所有数据存储节点发送数据状态查询指令,并等待全局数据处于一致性状态;
S400,全局备份模块获取全局一致性点位信息,写入到数据备份节点进行持久化存储。
上述技术方案的工作原理为:本实施例采用的方案是全局备份模块接收分布式数据库全局备份一致性点位请求,该请求由数据备份触发,包括以下中的一种:全量数据一致性备份请求、增量数据一致性备份请求。全局备份模块根据全局备份一致性点位请求,向所有活跃的数据协调节点发送一致性备份指令。全局备份模块等待数据协调节点和数据存储节点处于一个全局一致性的状态。在本文中,所述全局一致性状态包括一下中的多个:活跃数据协调节点读写事务以及数据结构变更事务不再进行事务提交操作,等待所述活跃数据协调节点不存在处于事务提交阶段的读写事务及数据结构变更事务;存在数据协调节点在全局数据一致性点获取之前处于非活跃状态,所述数据协调节点存在已经处于事务提交阶段的读写事务及数据结构变更事务,所述事务在数据存储节点中处于数据提交操作阶段,等待所有数据存储节点中不存在处于数据提交节点的数据;存在数据协调节点,在获取全局一致性点位过程中活跃状态发生变更,全局备份模块监控数据协调节点活跃状态并进行校验,确保获取全局一致性点位的正确性。
全局备份模块向所有数据存储节点查询获取一致性点位后的点位信息,并经序列化后生成全局一致性点位,以数据库数据表存储的方式,将全局一致性点位持久化写入到备份节点。进一步,可以通过查询备份节点的数据表的数据,获取备份的一致性点位信息。
上述技术方案的有益效果为:采用本实施例提供的方案在分布式备份全局一致性点位获取过程中,只对读写类事务的事务提交阶段进行延迟提交处理,降低获取全局一致性点位过程中对分布式数据库系统本身处理业务读写请求的影响;对延迟提交等待处理时间进行优化,针对存在大事务提交场景,自动将等待时间切割,每次仅需等待不大于特定阈值的时间,降低大事务对延迟提交的影响;对故障处理机制进行优化,自动监控节点状态变化,并在状态发生变化后自动重试,降低故障对延迟提交和备份一致性点位获取的影响,并提升易用性。
在另一实施例中,如图2所示,所述S200包括:
S201,判断事务在数据协调节点接收一致性备份指令之前,是否进入到数据提交阶段;若是,则执行S202步骤,若否,则执行S203步骤;
S202,不进行延迟提交的处理;
S203,根据事务数据的请求类型将事务进行类型划分,划分为以下类型事务中的一种:只读事务、读写事务、数据结构变更事务;
S204,若数据协调节点接收到事务提交请求,且事务类型为只读事务时,将不做任何处理,事务继续完成提交操作;
S205,若数据协调节点接收到事务提交请求,且事务类型为读写事务或数据结构变更事务时,阻塞事务提交请求;
S206,若数据协调节点阻塞事务提交请求后,全局备份模块在设定的时间点向数据协调节点发送指令,将被阻塞的事务提交请求,完成提交,并不再阻塞新的事务提交请求。
上述技术方案的工作原理为:本实施例采用的方案是事务延迟提交模块接收事务提交请求。在本实施例中,事务提交请求包括以下中的一个:只读事务提交请求、读写事务提交请求、数据结构变更事务请求。
事务延迟提交模块判断事务提交请求的类型,是否为只读事务提交的请求。如果是只读事务提交请求,对只读事务提交请求,不论事务延迟提交模块是否处于延迟提交状态,都直接执行事务提交操作,不做其它处理。如果不是只读事务提交请求,事务延迟提交模块进一步判断是否事务需要进行延迟提交处理。一般情况下,事务不需要延迟提交;当数据协调节点接收全局备份模块的一致性备份指令后,切换延迟提交状态,此时事务需要进行延迟提交操作;在分布式数据库数据备份获取全局一致性点位结束后,通过关闭接收一致性备份指令的连接,再次切换延迟提交状态,事务不在需要进行延迟提交。如果事务延迟提交,对读写事务及数据结构变更事务进行延迟提交处理操作。延迟提交过程中,事务被阻塞执行,直到事务延迟提交模块再次切换为非延迟提交状态。如果不是事务延迟提交,对读写事务及数据结构变更事务,在事务进入提交阶段时,先在协调节点中全局进入事务提交阶段的事务中添加本事务,之后进行事务提交操作,在事务提交完成之后,在协调节点中全局进入事务提交阶段的事务中删减本事务。
上述技术方案的有益效果为:采用本实施例提供的方案当数据协调节点接收备份一致性指令后,通过事务延迟提交方法,新的读写事务和数据结构变更事务,在接收事务提交请求后,不会进入到事务提交阶段。通过等待协调节点中全局进入事务提交阶段的事务数量为空,可以进入数据协调节点的全局一致性状态。
在另一实施例中,所述S200之前包括:
S500,若事务是只读事务,事务进入提交阶段后,不记录该事务的提交信息,事务完成提交后,也不更新事务的提交信息;若事务是读写事务或数据结构变更事务,进入事务提交阶段时,在数据协调节点中更新全局已经进入事务提交阶段的事务数量信息,添加本事务信息,在事务完成提交后,更新全局已经进入事务提交阶段的事务数量信息,删减本事务信息;
S600,在数据协调节点中设置全局已经进入事务提交阶段的事务数量信息的展示接口;
S700,全局备份模块发送全局已经进入事务提交阶段的事务数量信息的查询命令,查询各个数据协调节点中处于事务提交阶段的事务数量信息;全局备份模块等待各个数据协调节点中不存在任何处于事务提交阶段的事务。
上述技术方案的工作原理为:本实施例采用的方案是若事务是只读事务,事务进入提交阶段后,不记录该事务的提交信息,事务完成提交后,也不更新事务的提交信息;若事务是读写事务或数据结构变更事务,进入事务提交阶段时,在数据协调节点中更新全局已经进入事务提交阶段的事务数量信息,添加本事务信息,在事务完成提交后,更新全局已经进入事务提交阶段的事务数量信息,删减本事务信息;全局备份模块发送全局已经进入事务提交阶段的事务数量信息的查询命令,查询各个数据协调节点中处于事务提交阶段的事务数量信息;全局备份模块等待各个数据协调节点中不存在任何处于事务提交阶段的事务。
采用本实施例提供的方案当数据协调节点接收备份一致性指令后,通过事务延迟提交方法,新的读写事务和数据结构变更事务,在接收事务提交请求后,不会进入到事务提交阶段。通过等待协调节点中全局进入事务提交阶段的事务数量为空,可以进入数据协调节点的全局一致性状态。
在另一实施例中,所述S200之前包括:
S800,所述数据协调节点在接收一致性备份指令之前,判断数据协调节点的状态是否异常,若异常,全局备份模块跳过对异常数据协调节点发送一致性备份指令,跳过对所述异常数据协调节点的全局已经进入事务提交阶段的事务数量信息的查询和等待,继续执行一致性备份;
S900,若所述数据协调节点在异常之前,已经执行了读写事务、或者数据结构变更事务的事务提交操作,所述事务提交操作通过数据存储节点进行数据状态查询获取,但所述事务提交无法从异常数据协调节点中获取事务执行状态;
相应的,S300包括:
S301,全局备份模块在等待所有接收一致性备份请求指令的数据协调节点,没有处于事务提交阶段的读写事务或者数据结构变更事务后,向数据存储节点发送数据状态查询指令,查询处于数据提交阶段的数据信息,所述数据节点获取数据状态,向全局备份模块发送数据状态信息;
S302,全局备份模块等待所有数据存储节点不存在任何处于数据提交阶段的数据。
上述技术方案的工作原理为:本实施例采用的方案是所述数据协调节点在接收一致性备份指令之前,判断数据协调节点的状态是否异常,若异常,全局备份模块跳过对异常数据协调节点发送一致性备份指令,跳过对所述异常数据协调节点的全局已经进入事务提交阶段的事务数量信息的查询和等待,继续执行一致性备份;若所述数据协调节点在异常之前,已经执行了读写事务、或者数据结构变更事务的事务提交操作,所述事务提交操作通过数据存储节点进行数据状态查询获取,但所述事务提交无法从异常数据协调节点中获取事务执行状态;全局备份模块在等待所有接收一致性备份请求指令的数据协调节点,没有处于事务提交阶段的读写事务或者数据结构变更事务后,向数据存储节点发送数据状态查询指令,查询处于数据提交阶段的数据信息,所述数据节点获取数据状态,向全局备份模块发送数据状态信息;全局备份模块等待所有数据存储节点不存在任何处于数据提交阶段的数据。
在另一实施例中,所述S200中,数据协调节点接收一致性备份指令,包括:
S207,所述数据协调节点接收到一致性备份指令后,若发生状态异常,所述数据协调节点被阻塞的事务提交请求继续执行;
S208,所述数据协调节点接收到一致性备份指令前,若发生状态异常,在一致性备份过程中,所述数据协调节点恢复并继续执行新的事务请求,全局备份模块监听数据协调节点的变化,在一致性备份指令开始后,数据协调节点发生异常状态后,终止当前一致性备份请求,自动重新开启新的一致性备份请求。
上述技术方案的工作原理为:本实施例采用的方案是所述数据协调节点接收到一致性备份指令后,若发生状态异常,所述数据协调节点被阻塞的事务提交请求继续执行;所述数据协调节点接收到一致性备份指令前,若发生状态异常,在一致性备份过程中,所述数据协调节点恢复并继续执行新的事务请求,全局备份模块监听数据协调节点的变化,在一致性备份指令开始后,数据协调节点发生异常状态后,终止当前一致性备份请求,自动重新开启新的一致性备份请求。
上述技术方案的技术效果为:全局备份模块开启对数据协调节点的状态监控,该监控会实时获取数据协调节点的状态,并在任何节点发生任何故障切换时,更新监控视图信息,当获取全局数据一致性点位任务开启时,首先获取到当前数据协调节点的视图信息,并判断分布式数据库中各个数据协调节点的活跃状态。如果某个数据协调节点处于活跃状态,数据协调节点为活跃节点,全局备份模块给数据协调节点发送一致性备份指令,并等待数据协调节点处于全局一致性状态。如果处于非活跃状态,数据协调节点为非活跃节点,全局备份模块无法直接获取到所述数据协调节点的事务提交状态。此时,在等待全部活跃数据协调节点处于一致性状态后,全局备份模块直接通过查询所有数据存储节点的数据提交状态,获取非活跃数据协调的提交状态信息。当活跃数据节点处于全局一致性状态后,活跃数据节点中不存在任何处于事务提交状态的事务,此时,如果查询到数据存储节点存在处于数据提交状态的数据,则所述非活跃数据协调节点存在未完成事务提交的事务。全局备份模块通过等待所有数据存储节点中不存在任何处于数据提交的数据,获取所述非活跃数据协调节点的全局一致性状态。
在获取所有活跃数据协调节点和非活跃数据协调节点的全局一致性状态后,进一步通过对数据协调节点的监控信息,检验对比是否存在数据协调节点发生过视图变更。如果不存在数据协调节点发生视图变化,备份获取到了一个全局一致性点位,可以进一步查询数据节点的数据点位信息。如果存在数据协调节点发生视图变化,在获取全局一致性点位过程中,发生了数据协调节点的状态切换,存在新的事务进入事务提交节点,导致数据不一致。此时,全局备份模块终止本次全局一致性点位的任务,并自动开启新一轮的获取全局一致性点位的任务,继续尝试获取全局一致性点位。
在另一实施例中,所述S300包括:
S303,全局备份模块向所有数据存储节点发送一致性点位查询请求;
S304,各个数据存储节点在接收到一致性点位查询请求后,向全局备份模块发送本节点的数据点位信息;
相应的,S400包括:
S401,全局备份模块接收所有数据存储节点的点位信息后,将所述的点位信息序列化为分布式全局一致性点位信息;
S402,全局备份模块将全局一致性点位信息写入到数据备份节点中,进行持久化存储。
其中,在进行持久化存储时,可以预测各个数据备份节点的状态,根据不同数据备份节点的状态进行相应的数据备份处理。
预测各个数据备份节点的状态的方式如下:
对数据备份节点的读写状态是否平稳进行判断,具体的判定方式是通过对存储数据的时间序列是否存在单位根的方式作为平稳性的判断依据,如果一段时间序列存在单位根,则说明该段数据是非平稳性数据。
Figure BDA0004047728810000141
Figure BDA0004047728810000142
其中,ρk表示滞后k阶偏自相关系数,k表示阶数,t表示时间序列数据中的第t个数据,T表示时间序列数据中数据的数量,Xt表示时间序列数据,
Figure BDA0004047728810000143
表示时间序列数据的均值,Xt-k表示时间序列数据中的第t-k个数据,
Figure BDA0004047728810000144
表示滞后k阶自相关系数,i表示第i阶,i=1,2…k-1,
Figure BDA0004047728810000145
表示k-1阶与iρk-i阶的自相关系数,
Figure BDA0004047728810000146
表示k-1阶与iρi阶的自相关系数。
根据ρk可以确定自回归项的取值范围,根据
Figure BDA0004047728810000147
可以确定移动平均橡树的取值范围,根据偏自相关系数和自相关系数的截尾性和拖尾性选择时间序列的预测模型,基于预测模型对各个数据备份节点的状态进行预测。
上述技术方案的工作原理为:本实施例采用的方案是全局备份模块向所有数据存储节点发送一致性点位查询请求;各个数据存储节点在接收到一致性点位查询请求后,向全局备份模块发送本节点的数据点位信息;全局备份模块接收所有数据存储节点的点位信息后,将所述的点位信息序列化为分布式全局一致性点位信息;全局备份模块将全局一致性点位信息写入到数据备份节点中,进行持久化存储。
上述技术方案的有益效果为:采用本实施例提供的方案在分布式备份全局一致性点位获取过程中,只对读写类事务的事务提交阶段进行延迟提交处理,降低获取全局一致性点位过程中对分布式数据库系统本身处理业务读写请求的影响。
在另一实施例中,本实施例还提供数据库中数据备份时获取全局一致性点位的装置,请参照图3,该装置包括:
事务延迟提交模块,用于阻塞数据协调节点的事务提交请求;以及更新数据协调节点的进入事务提交请求的事务数量信息;以及显示数据协调节点的进入事务提交请求的事务数量信息;
全局备份模块,用于接收全局数据一致性点位请求,并向数据协调节点的事务延迟提交模块发送一致性备份指令;等待分布式数据库处于全局一致性状态;查询所有数据存储节点的点位信息,序列化并持久化写入到数据备份节点;
其中,所述事务提交请求包括:只读事务提交请求、读写事务提交请求、数据结构变更事务提交请求;相应的,所述进入事务提交请求包括:进入提交阶段的读写事务、进入提交阶段的数据结构变更事务。
上述技术方案的工作原理为:本实施例采用的方案是事务延迟提交模块,用于阻塞数据协调节点的事务提交请求;以及更新数据协调节点的进入事务提交请求的事务数量信息;以及显示数据协调节点的进入事务提交请求的事务数量信息;全局备份模块,用于接收全局数据一致性点位请求,并向数据协调节点的事务延迟提交模块发送一致性备份指令;等待分布式数据库处于全局一致性状态;查询所有数据存储节点的点位信息,序列化并持久化写入到数据备份节点;其中,所述事务提交请求包括:只读事务提交请求、读写事务提交请求、数据结构变更事务提交请求;相应的,所述进入事务提交请求包括:进入提交阶段的读写事务、进入提交阶段的数据结构变更事务。
上述技术方案的有益效果为:采用本实施例提供的方案在分布式备份全局一致性点位获取过程中,只对读写类事务的事务提交阶段进行延迟提交处理,降低获取全局一致性点位过程中对分布式数据库系统本身处理业务读写请求的影响;对延迟提交等待处理时间进行优化,针对存在大事务提交场景,自动将等待时间切割,每次仅需等待不大于特定阈值的时间,降低大事务对延迟提交的影响;对故障处理机制进行优化,自动监控节点状态变化,并在状态发生变化后自动重试,降低故障对延迟提交和备份一致性点获取的影响,并提升易用性。
在另一实施例中,所述事务延迟提交模块,接收到数据协调节点的事务提交请求时,判断事务的类型;如果是只读事务提交请求,不进行任何处理,事务可直接完成提交操作;如果是读写事务提交请求、或者是数据结构变更事务提交请求,在事务进入提交阶段时,更新所在数据协调节点中全局进入事务提交请求的事务数量,添加本事务,在事务完成提交后,再次更新所在数据协调节点中全局进入事务提交请求的事务数量,删减本事务。
上述技术方案的工作原理为:本实施例采用的方案是事务延迟提交模块在接收全局备份模块的一致性备份指令后,切换为事务延迟提交状态。在一些例子中,在切换事务延迟提交状态之前,对于读写事务及数据结构变更事务,在进行事务提交请求时,事务延迟提交模块在事务提交之前,将事务添加到数据协调节点的全局进入事务提交状态中,在事务完成提交后,从数据协调节点的全局进入事务提交状态中删减本事务。在一些例子中,在切换事务延迟提交状态后,对于读写事务及数据结构变更事务,在进行事务提交请求时,延迟事务的提交操作。在一些例子中,全局备份模块等待数据协调节点中进入事务提交状态事务为空,此时,数据协调节点进入全局一致性状态。
在另一实施例中,数据协调节点在接收全局备份模块发送的一致性备份指令后,所述事务延迟提交模块切换到事务延迟提交状态;切换延迟提交状态后,只读事务可以正常完成提交操作;切换延迟提交状态后,读写事务、数据结构变更事务进入事务提交阶段时,阻塞事务的提交操作,全局进入事务提交请求的事务数量,不再更新添加本事务;
在一致性备份点位成功获取之后,或者一致性备份终止之后,所述事务延迟提交模块和全局备份模块关闭发送一致性备份指令的链接,或者因故障自动关闭该链接,事务延迟提交模块将自动切换为非事务延迟提交状态;
切换为非事务延迟提交状态后,数据协调节点中被阻塞的事务继续执行,完成提交操作。
上述技术方案的工作原理为:本实施例采用的方案是事务延迟提交模块在接收全局备份模块的一致性备份指令后,切换为事务延迟提交状态。在一些例子中,在切换事务延迟提交状态之前,对于读写事务及数据结构变更事务,在进行事务提交请求时,事务延迟提交模块在事务提交之前,将事务添加到数据协调节点的全局进入事务提交状态中,在事务完成提交后,从数据协调节点的全局进入事务提交状态中删减本事务。在一些例子中,在切换事务延迟提交状态后,对于读写事务及数据结构变更事务,在进行事务提交请求时,延迟事务的提交操作。在一些例子中,全局备份模块等待数据协调节点中进入事务提交状态事务为空,此时,数据协调节点进入全局一致性状态。
在另一实施例中,所述全局备份模块,在接收一致性备份请求后,触发启动获取全局一致性点位的任务;在启动所述获取全局一致性点位任务后,获取所有处于活跃状态的数据协调节点,并向所述数据协调节点发送一致性备份指令;
所述全局备份模块监控数据协调节点的状态;如果数据协调节点故障,所述全局备份模块更新数据节点状态,从活跃状态列表中删减故障节点;如果故障协调节点从故障中恢复,所述全局备份模块更新数据节点,将恢复的协调加入到活跃状态列表中;所述全局备份模块从活跃状态列表中获取所有活跃状态的数据协调节点。
在另一实施例中,所述全局备份模块在向所有活跃状态的数据协调节点发送一致性备份指令后,等待分布式数据库进入到一个全局备份一致性状态;
活跃数据协调节点在接收全局一致性备份指令后,切换到事务延迟提交状态,新的读写事务提交请求、和新的数据结构变更事务提交请求,被阻塞提交,全局备份模块查询所有活跃数据协调节点中进入事务提交阶段的事务数量,并等待所有活跃数据协调节点中进入事务提交阶段的事务数量为空时,所述数据活跃协调节点进入到一致性状态;
存在非活跃数据协调节点未能接收到全局一致性备份指令时,所述非活跃数据协调节点因故障也不能处理新的事务提交请求,但所述非活跃事务协调节点故障之前,存在未完成提交的事务,全局备份模块不能获取到所述未提交的事务的状态,全局备份模块进一步从所有数据存储节点中查询数据的提交状态;
所有活跃数据协调节点中已经等待进入事务提交阶段的事务数量为空,所述活跃数据协调节点中不存在数据提交状态的事务;
全局备份模块通过等待所有数据存储节点中查询数据的提交状态的数量,等待非活跃数据协调节点完成事务的提交状态,所述非活跃数据协调节点中的事务进入到一致性状态。
在另一实施例中,全局备份模块监听数据协调节点的活跃状态切换信息,自动处理数据协调节点故障场景;
存在活跃数据协调节点,在获取全局一致性点位期间,因故障原因,变成非活跃数据协调节点,也存在非活跃数据协调节点,在获取全局一致性点位期间,节点从故障中恢复,重新切换为活跃数据协调节点,数据协调节点在获取全局一致性点位期间,发生活跃状态切换,全局备份模块无法获取准确的全局一致性点位信息,存在数据协调节点,在获取全局一致性点位期间,发生多次活跃状态切换,并最终和初始获取全局一致性点位时间点时,状态一致,全局备份模块通过监听数据节点的状态,获取每一次数据协调节点的状态切换,并更新全局数据协调节点的活跃状态视图标记号;
全局备份模块在获取全局备份一致性点开始时间点,记录当前全局数据协调节点的活跃状态视图标记号,并在等待获取全局备份一致性点过程中,检查实时的全局数据协调节点活跃状态视图标记号;
如果全局数据协调节点活跃状态视图标记号发生变化,全局备份模块终止本次全局备份一致性点位获取任务。
全局备份模块监控数据协调节点的状态和活跃视图变更。在一些例子中,对于未处于活跃状态的数据协调节点,全局备份模块在等待所有活跃数据协调节点进入全局一致性状态后,继续等待所有数据存储节点不存在数据处于数据提交状态,此时,所有非活跃数据协调节点进入全局一致性状态。在一些例子中,全局备份模块在进入全局事务一致性状态时,监控数据协调节点的状态并校验是否存在数据协调节点发生状态视图变更,如果存在状态视图变化,则终止本次获取全局一致性点位的任务并自动重新启动新的任务;否则,如果不存在状态视图变化,则分布式数据库处于全局一致性状态。
在另一实施例中,当出现全局数据协调节点活跃状态视图标记号发生变化的场景,终止获取全局备份一致性点位任务时,自动重新开启新的全局备份一致性点位获取任务;
全局备份模块通过自动重启一致性点位获取任务,能自动过滤部分非频繁故障场景,提升备份的整体易用性。
在另一实施例中,全局备份一致点位过程中需要降低对分布式数据库本身数据读写请求的影响,减少数据协调节点中被阻塞提交的事务的阻塞时间;
全局备份模块在等待分布式数据库进入到一个全局备份一致性状态的过程中,如果存在大事务提交操作,等待时间会较长,全局备份模块在等待过程中设置一个等待时间阈值,超出等待时间阈值后,全局备份模块终止本次全局备份一致性点位获取任务,并自动重新开启新的全局备份一致性点位获取任务;
全局备份模块通过自动重启一致性点位获取任务,能自动处理部分长事务场景,提升备份的整体易用性。
在另一实施例中,所述全局备份模块在获取到全局备份一致性状态后,向所有数据存储节点发送数据点位信息请求;
数据存储节点在接收到全局备份模块的数据点位信息请求后,将节点本身的数据点位信息发送给全局备份模块;
全局备份模块在接收到所有数据存储节点的数据点位信息后,进行序列化处理,生成全局一致性备份点位信息;
全局备份模块将全局一致性备份点位信息,通过执行SQL语句的方式,持久化写入到数据备份节点的备份一致性点位系统数据表中;
进一步,通过查询数据备份节点的备份一致性点位系统数据表的数据,显示一次全局数据备份中全局数据一致性点位信息。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (10)

1.数据库中数据备份时获取全局一致性点位的方法,其特征在于,包括:
S100,全局备份模块接收全局数据一致性备份请求,向各个数据协调节点发送一致性备份指令;
S200,所述数据协调节点接收一致性备份指令,对事务请求进行处理;
S300,全局备份模块向所有数据协调节点发送事务状态查询指令,并等待全局事务处于一致性状态;全局备份模块向所有数据存储节点发送数据状态查询指令,并等待全局数据处于一致性状态;
S400,全局备份模块获取全局一致性点位信息,写入到数据备份节点进行持久化存储。
2.根据权利要求1所述的数据库中数据备份时获取全局一致性点位的方法,其特征在于,所述S200包括:
S201,判断事务在数据协调节点接收一致性备份指令之前,是否进入到数据提交阶段;若是,则执行S202步骤,若否,则执行S203步骤;
S202,不进行延迟提交的处理;
S203,根据事务数据的请求类型将事务进行类型划分,划分为以下类型事务中的一种:只读事务、读写事务、数据结构变更事务;
S204,若数据协调节点接收到事务提交请求,且事务类型为只读事务时,将不做任何处理,事务继续完成提交操作;
S205,若数据协调节点接收到事务提交请求,且事务类型为读写事务或数据结构变更事务时,阻塞事务提交请求;
S206,若数据协调节点阻塞事务提交请求后,全局备份模块在设定的时间点向数据协调节点发送指令,将被阻塞的事务提交请求,完成提交,并不再阻塞新的事务提交请求。
3.根据权利要求1所述的数据库中数据备份时获取全局一致性点位的方法,其特征在于,所述S200之前包括:
S500,若事务是只读事务,事务进入提交阶段后,不记录该事务的提交信息,事务完成提交后,也不更新事务的提交信息;若事务是读写事务或数据结构变更事务,进入事务提交阶段时,在数据协调节点中更新全局已经进入事务提交阶段的事务数量信息,添加本事务信息,在事务完成提交后,更新全局已经进入事务提交阶段的事务数量信息,删减本事务信息;
S600,在数据协调节点中设置全局已经进入事务提交阶段的事务数量信息的展示接口;
S700,全局备份模块发送全局已经进入事务提交阶段的事务数量信息的查询命令,查询各个数据协调节点中处于事务提交阶段的事务数量信息;全局备份模块等待各个数据协调节点中不存在任何处于事务提交阶段的事务。
4.根据权利要求1所述的数据库中数据备份时获取全局一致性点位的方法,其特征在于,所述S200之前包括:
S800,所述数据协调节点在接收一致性备份指令之前,判断数据协调节点的状态是否异常,若异常,全局备份模块跳过对异常数据协调节点发送一致性备份指令,跳过对所述异常数据协调节点的全局已经进入事务提交阶段的事务数量信息的查询和等待,继续执行一致性备份;
S900,若所述数据协调节点在异常之前,已经执行了读写事务、或者数据结构变更事务的事务提交操作,所述事务提交操作通过数据存储节点进行数据状态查询获取,但所述事务提交无法从异常数据协调节点中获取事务执行状态;
相应的,S300包括:
S301,全局备份模块在等待所有接收一致性备份请求指令的数据协调节点,没有处于事务提交阶段的读写事务或者数据结构变更事务后,向数据存储节点发送数据状态查询指令,查询处于数据提交阶段的数据信息,所述数据节点获取数据状态,向全局备份模块发送数据状态信息;
S302,全局备份模块等待所有数据存储节点不存在任何处于数据提交阶段的数据。
5.根据权利要求1所述的数据库中数据备份时获取全局一致性点位的方法,其特征在于,所述S200中,数据协调节点接收一致性备份指令,包括:
S207,所述数据协调节点接收到一致性备份指令后,若发生状态异常,所述数据协调节点被阻塞的事务提交请求继续执行;
S208,所述数据协调节点接收到一致性备份指令前,若发生状态异常,在一致性备份过程中,所述数据协调节点恢复并继续执行新的事务请求,全局备份模块监听数据协调节点的变化,在一致性备份指令开始后,数据协调节点发生异常状态后,终止当前一致性备份请求,自动重新开启新的一致性备份请求。
6.数据库中数据备份时获取全局一致性点位的装置,其特征在于,包括:
事务延迟提交模块,用于阻塞数据协调节点的事务提交请求;以及更新数据协调节点的进入事务提交请求的事务数量信息;以及显示数据协调节点的进入事务提交请求的事务数量信息;
全局备份模块,用于接收全局数据一致性点位请求,并向数据协调节点的事务延迟提交模块发送一致性备份指令;等待分布式数据库处于全局一致性状态;查询所有数据存储节点的点位信息,序列化并持久化写入到数据备份节点;
其中,所述事务提交请求包括:只读事务提交请求、读写事务提交请求、数据结构变更事务提交请求;相应的,所述进入事务提交请求包括:进入提交阶段的读写事务、进入提交阶段的数据结构变更事务。
7.根据权利要求6所述的数据库中数据备份时获取全局一致性点位的装置,其特征在于,所述事务延迟提交模块,接收到数据协调节点的事务提交请求时,判断事务的类型;如果是只读事务提交请求,不进行任何处理,事务可直接完成提交操作;如果是读写事务提交请求、或者是数据结构变更事务提交请求,在事务进入提交阶段时,更新所在数据协调节点中全局进入事务提交请求的事务数量,添加本事务,在事务完成提交后,再次更新所在数据协调节点中全局进入事务提交请求的事务数量,删减本事务。
8.根据权利要求6所述的数据库中数据备份时获取全局一致性点位的装置,其特征在于,数据协调节点在接收全局备份模块发送的一致性备份指令后,所述事务延迟提交模块切换到事务延迟提交状态;切换延迟提交状态后,只读事务可以正常完成提交操作;切换延迟提交状态后,读写事务、数据结构变更事务进入事务提交阶段时,阻塞事务的提交操作,全局进入事务提交请求的事务数量,不再更新添加本事务;
在一致性备份点位成功获取之后,或者一致性备份终止之后,所述事务延迟提交模块和全局备份模块关闭发送一致性备份指令的链接,或者因故障自动关闭该链接,事务延迟提交模块将自动切换为非事务延迟提交状态;
切换为非事务延迟提交状态后,数据协调节点中被阻塞的事务继续执行,完成提交操作。
9.根据权利要求6所述的数据库中数据备份时获取全局一致性点位的装置,其特征在于,所述全局备份模块,在接收一致性备份请求后,触发启动获取全局一致性点位的任务;在启动所述获取全局一致性点位任务后,获取所有处于活跃状态的数据协调节点,并向所述数据协调节点发送一致性备份指令;
所述全局备份模块监控数据协调节点的状态;如果数据协调节点故障,所述全局备份模块更新数据节点状态,从活跃状态列表中删减故障节点;如果故障协调节点从故障中恢复,所述全局备份模块更新数据节点,将恢复的协调加入到活跃状态列表中;所述全局备份模块从活跃状态列表中获取所有活跃状态的数据协调节点。
10.根据权利要求6所述的数据库中数据备份时获取全局一致性点位的装置,其特征在于,所述全局备份模块在向所有活跃状态的数据协调节点发送一致性备份指令后,等待分布式数据库进入到一个全局备份一致性状态;
活跃数据协调节点在接收全局一致性备份指令后,切换到事务延迟提交状态,新的读写事务提交请求、和新的数据结构变更事务提交请求,被阻塞提交,全局备份模块查询所有活跃数据协调节点中进入事务提交阶段的事务数量,并等待所有活跃数据协调节点中进入事务提交阶段的事务数量为空时,所述数据活跃协调节点进入到一致性状态;
存在非活跃数据协调节点未能接收到全局一致性备份指令时,所述非活跃数据协调节点因故障也不能处理新的事务提交请求,但所述非活跃事务协调节点故障之前,存在未完成提交的事务,全局备份模块不能获取到所述未提交的事务的状态,全局备份模块进一步从所有数据存储节点中查询数据的提交状态;
所有活跃数据协调节点中已经等待进入事务提交阶段的事务数量为空,所述活跃数据协调节点中不存在数据提交状态的事务;
全局备份模块通过等待所有数据存储节点中查询数据的提交状态的数量,等待非活跃数据协调节点完成事务的提交状态,所述非活跃数据协调节点中的事务进入到一致性状态。
CN202310033262.7A 2023-01-10 2023-01-10 数据库中数据备份时获取全局一致性点位的方法及装置 Active CN116107807B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310033262.7A CN116107807B (zh) 2023-01-10 2023-01-10 数据库中数据备份时获取全局一致性点位的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310033262.7A CN116107807B (zh) 2023-01-10 2023-01-10 数据库中数据备份时获取全局一致性点位的方法及装置

Publications (2)

Publication Number Publication Date
CN116107807A true CN116107807A (zh) 2023-05-12
CN116107807B CN116107807B (zh) 2023-10-13

Family

ID=86260984

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310033262.7A Active CN116107807B (zh) 2023-01-10 2023-01-10 数据库中数据备份时获取全局一致性点位的方法及装置

Country Status (1)

Country Link
CN (1) CN116107807B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117411772A (zh) * 2023-12-14 2024-01-16 积至网络(北京)有限公司 一种分布式网络节点管理与安全重组方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104750573A (zh) * 2014-12-17 2015-07-01 杭州斯凯网络科技有限公司 分布式数据系统数据节点的全局一致性备份和还原方法
CN106610876A (zh) * 2015-10-23 2017-05-03 中兴通讯股份有限公司 数据快照的恢复方法及装置
US9842031B1 (en) * 2014-12-08 2017-12-12 Amazon Technologies, Inc. Incremental updates to user transaction state at read-only nodes of a distributed database
CN107835983A (zh) * 2015-04-16 2018-03-23 诺宝公司 使用一致的数据库快照在分布式数据库中进行备份和还原
CN109739935A (zh) * 2019-01-09 2019-05-10 腾讯科技(深圳)有限公司 数据读取方法、装置、电子设备以及存储介质
CN112306743A (zh) * 2019-07-26 2021-02-02 阿里巴巴集团控股有限公司 数据处理方法、装置、电子设备及计算机存储介质
CN114880167A (zh) * 2022-05-10 2022-08-09 星环信息科技(上海)股份有限公司 数据备份、恢复方法、服务器、分布式系统及存储介质
CN115495495A (zh) * 2021-06-18 2022-12-20 华为云计算技术有限公司 事务处理方法、分布式数据库系统、集群及介质
CN115544037A (zh) * 2022-09-29 2022-12-30 阿里云计算有限公司 事务执行方法和分布式数据库系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9842031B1 (en) * 2014-12-08 2017-12-12 Amazon Technologies, Inc. Incremental updates to user transaction state at read-only nodes of a distributed database
CN104750573A (zh) * 2014-12-17 2015-07-01 杭州斯凯网络科技有限公司 分布式数据系统数据节点的全局一致性备份和还原方法
CN107835983A (zh) * 2015-04-16 2018-03-23 诺宝公司 使用一致的数据库快照在分布式数据库中进行备份和还原
CN106610876A (zh) * 2015-10-23 2017-05-03 中兴通讯股份有限公司 数据快照的恢复方法及装置
CN109739935A (zh) * 2019-01-09 2019-05-10 腾讯科技(深圳)有限公司 数据读取方法、装置、电子设备以及存储介质
CN112306743A (zh) * 2019-07-26 2021-02-02 阿里巴巴集团控股有限公司 数据处理方法、装置、电子设备及计算机存储介质
CN115495495A (zh) * 2021-06-18 2022-12-20 华为云计算技术有限公司 事务处理方法、分布式数据库系统、集群及介质
CN114880167A (zh) * 2022-05-10 2022-08-09 星环信息科技(上海)股份有限公司 数据备份、恢复方法、服务器、分布式系统及存储介质
CN115544037A (zh) * 2022-09-29 2022-12-30 阿里云计算有限公司 事务执行方法和分布式数据库系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
OUYANG, XIANGYONG.ET: "An efficient commit protocol exploiting primary-backup placement in a distributed storage system", 《12TH PACIFIC RIM INTERNATIONAL SYMPOSIUM ON DEPENDABLE COMPUTING, PROCEEDINGS 20061231》 *
储佳佳;郭进伟;刘柏众;张晨东;钱卫宁;: "高可用数据库系统中的分布式一致性协议", 华东师范大学学报(自然科学版), no. 05 *
张剑: "并行分布式信息网数据库管理系统的可扩展性事务处理机制研究", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117411772A (zh) * 2023-12-14 2024-01-16 积至网络(北京)有限公司 一种分布式网络节点管理与安全重组方法
CN117411772B (zh) * 2023-12-14 2024-03-19 积至网络(北京)有限公司 一种分布式网络节点管理与安全重组方法

Also Published As

Publication number Publication date
CN116107807B (zh) 2023-10-13

Similar Documents

Publication Publication Date Title
US6732123B1 (en) Database recovery to any point in time in an online environment utilizing disaster recovery technology
US6185699B1 (en) Method and apparatus providing system availability during DBMS restart recovery
EP3111347B1 (en) Efficient methods and systems for consistent read in record-based multi-version concurrency control
US5317731A (en) Intelligent page store for concurrent and consistent access to a database by a transaction processor and a query processor
US7831561B2 (en) Automated disk-oriented backups
JP2531776B2 (ja) デ―タベ―スを回復する方法
US7107294B2 (en) Method and apparatus for interrupting updates to a database to provide read-only access
US5724581A (en) Data base management system for recovering from an abnormal condition
Lampson et al. A new presumed commit optimization for two phase commit
CN108932338B (zh) 数据更新方法、装置、设备和介质
US20060095478A1 (en) Consistent reintegration a failed primary instance
JPH06318165A (ja) 故障後の再起動中でのトランザクション適応システムにおいてデータを利用可能にする方法
JPH0683679A (ja) データのバックアップ・コピー中の同時アクセスの方法及びシステム
JPH06168169A (ja) ログフォースなしに仮定コミットを持つ2相コミットプロトコルを使用する分散トランザクション処理
CN102203779B (zh) 更新数据的方法和控制装置
US5734896A (en) Recovery of a remotely initiated distributed prepared transaction by status report from a second database to an external coordinator
US8108356B2 (en) Method for recovering data in a storage system
US20140095553A1 (en) Techniques for moving data files without interrupting access
US5745674A (en) Management of units of work on a computer system log
CN115145697B (zh) 数据库事务的处理方法、装置及电子设备
CN116107807B (zh) 数据库中数据备份时获取全局一致性点位的方法及装置
US7051051B1 (en) Recovering from failed operations in a database system
KR100266978B1 (ko) 에러 발생시 데이타 베이스의 관련복구를 위한 시스템
US7949632B2 (en) Database-rearranging program, database-rearranging method, and database-rearranging apparatus
CN112765126A (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
GR01 Patent grant