CN111046024A - 一种共享存储数据库的数据处理方法、装置、设备及介质 - Google Patents

一种共享存储数据库的数据处理方法、装置、设备及介质 Download PDF

Info

Publication number
CN111046024A
CN111046024A CN201911296661.2A CN201911296661A CN111046024A CN 111046024 A CN111046024 A CN 111046024A CN 201911296661 A CN201911296661 A CN 201911296661A CN 111046024 A CN111046024 A CN 111046024A
Authority
CN
China
Prior art keywords
sequence number
adjusted
number value
checkpoint
data
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
CN201911296661.2A
Other languages
English (en)
Other versions
CN111046024B (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.)
Shanghai Dameng Database Co Ltd
Original Assignee
Shanghai Dameng Database 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 Shanghai Dameng Database Co Ltd filed Critical Shanghai Dameng Database Co Ltd
Priority to CN201911296661.2A priority Critical patent/CN111046024B/zh
Publication of CN111046024A publication Critical patent/CN111046024A/zh
Application granted granted Critical
Publication of CN111046024B publication Critical patent/CN111046024B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种共享存储数据库的数据处理方法、装置、设备及介质。该方法包括:获取数据库中待调整检查点的待调整检查点序号值,所述数据库至少包括两个节点,所述待调整检查点序号值为所述待调整检查点调整后的检查点序号值;广播所述待调整检查点序号值至其他节点;将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点,所述页日志序号值为各节点修改数据页时产生的记录序号值,所述重做日志用于记录对应节点修改数据页的操作。本发明能够有效保存数据,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。

Description

一种共享存储数据库的数据处理方法、装置、设备及介质
技术领域
本发明实施例涉及数据处理技术,尤其涉及一种共享存储数据库的数据处理方法、装置、设备及介质。
背景技术
当数据库正在从内存向磁盘写入数据页时,极端情况下(例如操作系统重启,或者主机掉电重启)可能导致只写入了该数据页部分数据,另一部分没有写到磁盘的数据丢失,这种现象称为页断裂(partial write)。
重做日志是数据库管理系统中处理系统故障恢复的重要依据。数据库节点实例修改数据页时同时生成对应的重做日志,如果数据库实例故障,实例重启后从检查点偏移开始依次重做重做日志能将所有数据页恢复到最新状态。检查点是重做日志的一个重要概念,包含检查点偏移和检查点偏移前重做日志最大序列号,称为检查点序列号。调整检查点偏移是某个节点在特定的时机将本节点上数据页序列号小于等于检查点序列号的数据页全部刷盘。之后,如果系统发生故障并重启,为了恢复数据库系统,重做各节点重做日志的时候,只需要重做检查点序列号之后的日志。调整检查点的目的是为了减少实例故障重启时需要重做的重做日志量。
单机环境下,解决页断裂的常见方式有两种:方案一,例如某数据库,采用纯物理格式的重做日志,日志内容不包含逻辑信息,仅包含修改数据页的表空间ID、文件ID、页号以及页内偏移和修改的内容,因为页断裂问题仅仅是操作系统未真正将内存中数据页写入磁盘,不会破坏已有数据,出现操作系统重启或掉电情况后,实例故障重启,从检查点序列号开始重做重做日志,基于已有的数据重新修改数据页,能够将数据恢复到最新,可以解决页断裂问题;方案二,例如Mysql数据库,采用逻辑格式和物理格式结合的重做日志,故障重启重做重做日志时依赖从磁盘加载的数据页内容,出现页断裂后无法通过重做日志恢复,Mysql采用double write的方式解决。
目前,共享存储数据库集群环境下,也存在页断裂的问题。在共享存储数据库集群环境,各节点数据库实例维护各自的重做日志。集群环境故障重启之后,从各节点检查点偏移扫描重做日志,并全局按重做日志序列号大小排序后,依次重做重做日志。下面是出现页断裂的两种情景:
场景一:(1)节点1初始化PAGE1,修改动作产生的重做日志序列号等于10000,节点1的检查点序列号还未调整,假设节点1当前的检查点序列号等于8000;(2)节点2修改PAGE1,修改动作产生的重做日志序列号等于20000,数据页序列号等于20000;(3)节点2的检查点调整,节点2的检查点序列号调整为21000,PAGE1写入磁盘;(4)集群环境故障重启,全局按重做日志序列号大小排序,依次重做各节点的重做日志。从磁盘中加载PAGE1之后,先重做节点1的重做日志,节点1的重做日志重做完毕。然后重做节点2的重做日志,由于节点2的检查点已经调整,按照检查点序列号的规则,只需要重做检查点序列号之后的日志,不会再重做节点2的重做日志,导致节点2的修改丢失。
对场景1的修改方法为:在集群环境故障重启时,重做重做日志时,比较重做日志序列号和数据页序列号,如果重做日志序列号小于数据页序列号,该重做日志不需要重做。但改进之后仍然会出现页断裂的场景,如场景2:(1)节点1初始化PAGE1,修改动作产生的重做日志序列号等于10000,检查点1的序列号还未调整,等于8000;(2)节点2修改PAGE1,修改动作产生的重做日志序列号等于20000,数据页序列号等于20000,检查点2还未调整,等于12000;(3)PAGE1刷盘的同时,操作系统掉电,PAGE1前半段写入磁盘(数据页序列号记录在数据页前半段),后半段内容丢失;(4)集群环境故障重启,由于节点1检查点未调整,重做节点1的重做日志,对PAGE1进行修改,从磁盘中加载PAGE1,此时发现PAGE1的数据页序列号等于20000,大于节点1的重做日志序列号,跳过节点1的重做日志没有重做。那么就导致数据页上节点1的数据丢失。
上述两种数据刷盘方法都可能导致共享存储数据库集群环境下数据的丢失。
发明内容
本发明提供一种共享存储数据库的数据处理方法、装置、设备及介质,以实现共享存储数据库宕机后不会出现数据丢失。
第一方面,本发明实施例提供了一种共享存储数据库的数据处理方法方法,包括:
获取数据库中待调整检查点的待调整检查点序号值,所述数据库至少包括两个节点,所述待调整检查点序号值为所述待调整检查点调整后的检查点序号值;
广播所述待调整检查点序号值至其他节点;
将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点,所述页日志序号值为各节点修改数据页时产生的记录序号值,所述重做日志用于记录对应节点修改数据页的操作。
可选的,将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点之后,还包括:
数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值;
根据重做日志序号值大于或等于所述最大检查点序号值的重做日志数据,恢复数据页数据。
可选的,任意节点修改数据页时,生成所述重做日志,当达到调整对应检查点的预设条件后,发起调整检查点操作,将所述页日志序号值小于待调整的检查点序号值的数据页写入磁盘。
可选的,所述调整对应检查点的预设条件,包括:
用于存储重做日志的剩余存储空间不足时发起调整检查点操作;和/或,
每隔预设时间发起调整检查点操作。
第二方面,本发明实施例还提供了一种共享存储数据库的数据处理装置,该装置包括:
第一获取模块,用于获取数据库中待调整检查点的待调整检查点序号值,所述数据库至少包括两个节点,所述待调整检查点序号值为所述待调整检查点调整后的检查点序号值;
广播模块,用于广播所述待调整检查点序号值至其他节点;
刷盘模块,用于将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点,所述页日志序号值为各节点修改数据页时产生的记录序号值,所述重做日志用于记录对应节点修改数据页的操作。
可选的,该装置还包括:
第二获取模块,用于数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值;
数据恢复模块,用于根据重做日志序号值大于或等于所述最大检查点序号值的重做日志数据,恢复数据页数据。
可选的,任意节点修改数据页时,生成所述重做日志,当达到调整对应检查点的预设条件后,发起调整检查点操作,将所述页日志序号值小于待调整的检查点序号值的数据页写入磁盘。
可选的,所述调整对应检查点的预设条件,包括:
用于存储重做日志的剩余存储空间不足时发起调整检查点操作;和/或,
每隔预设时间发起调整检查点操作。
第三方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本发明任意实施例所述的共享存储数据库的数据处理方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如本发明任意实施例所述的共享存储数据库的数据处理方法。
本发明通过调整节点的检查点时广播其待调整检查点序号值,将其他节点页日志序号值小于或等于该待调整检查点序号值的缓存数据写入磁盘,能够有效保存数据,在数据库宕机后,也不会造成数据的丢失,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。
附图说明
图1是本发明实施例一提供的共享存储数据库的数据处理方法的流程图;
图2是本发明实施例二提供的共享存储数据库的数据处理方法的流程图;
图3是本发明实施例三提供的共享存储数据库的数据处理装置的结构框图;
图4是本发明实施例四提供的一种计算机设备的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的共享存储数据库的数据处理方法的流程图,本实施例可适用于共享存储数据库集群环境下数据处理的情况,该方法可以由共享存储数据库的数据处理装置来执行,该装置可以通过软件和/或硬件实现。
如图1所示,该方法具体包括如下步骤:
步骤110、获取数据库中待调整检查点的待调整检查点序号值。
可选的,数据库至少包括两个节点。
其中,该数据库为共享存储数据库,可以对应多个数据库节点,节点可以理解为一台安装有数据库软件的服务器,多个节点就是数据库软件安装在多台服务器上,这样形成更大的集群;每个节点对应一个数据库实例,实例可以理解为“内存”和“后台进程”的集合,正常的数据库读入内存的过程是,由实例中一组后台进程从磁盘上将数据文件读入到实例的内存中,然后经过在内存中对数据的操作再从实例的内存中经过一组后台进程写到数据库中。
当节点修改数据页时,生成重做日志,重做日志用于记录对应节点修改数据页的操作,日志序号标识特定日志文件记录在日志文件中的位置;重做日志对应有检查点,本实施例中检查点序号值可以理解为检查点偏移前重做日志最大序号,调整检查点偏移是某个节点在特定的时机将本节点上页日志序号值小于或等于检查点序号值的数据页全部刷盘,待调整检查点序号值可以理解为待调整检查点调整后的检查点序号值。
具体的,当数据库中有节点调整检查点时,获取待调整检查点的待调整检查点序号值。
步骤120、广播待调整检查点序号值至其他节点。
具体的,将步骤110中获取的待调整的待调整检查点序号值广播至共享存储数据库集群中的其他节点。
步骤130、将数据库中所有页日志序号值小于或等于待调整检查点序号值的数据页写入磁盘后,通知待调整节点调整待调整检查点。
其中,页日志序号记录在数据页头上。
具体的,数据库中各节点接收到步骤120广播的待调整检查点序号值后,对比本节点记录的页日志序号值与待调整检查点序号值的大小关系,若本节点缓存中存在页日志序号值小于或等于待调整检查点序号值的数据页,则本节点将这一部分满足条件的数据页写入磁盘中,完成刷盘操作后通知待调整节点调整待调整检查点。
本发明实施例通过调整节点的检查点时广播其待调整检查点序号值,将其他节点页日志序号值小于或等于该待调整检查点序号值的缓存数据写入磁盘,能够有效保存数据,在数据库宕机后,也不会造成数据的丢失,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。
实施例二
图2为本发明实施例二提供的共享存储数据库的数据处理方法的流程图。本实施例在上述实施例的基础上,进一步优化了上述共享存储数据库的数据处理方法。
如图2所示,该方法具体包括:
步骤210、获取数据库中待调整节点的待调整检查点序号值。
具体的,当数据库中有节点调整检查点时,获取待调整检查点的待调整检查点序号值。
示例性的,将待调整检查点序号值记为T_CKPT_LSN。
步骤220、广播待调整检查点序号值至其他节点。
具体的,将步骤210中获取的待调整的待调整检查点序号值广播至共享存储数据库集群中的其他节点。
步骤230、将数据库中所有页日志序号值小于或等于待调整检查点序号值的数据页写入磁盘后,通知待调整节点调整待调整检查点。
具体的,数据库中各节点接收到步骤120广播的待调整检查点序号值后,对比本节点记录的页日志序号值与待调整检查点序号值的大小关系,若本节点缓存中存在页日志序号值小于或等于待调整检查点序号值的数据页,则本节点将这一部分满足条件的数据页写入磁盘中,完成刷盘操作后通知待调整节点调整待调整检查点。
示例性的,将页日志序号值记为PAGE_LSN,若PAGE_LSN≤T_CKPT_LSN,则将本节点将缓存中这一部分满足条件的数据页写入磁盘中,待所有节点都完成刷盘操作,通知待调整节点调整待调整检查点。
步骤240、数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值。
其中,宕机,指操作系统无法从一个严重系统错误中恢复过来,或系统硬件层面出问题,以致系统长时间无响应,而不得不重新启动计算机的现象。
具体的,出现操作系统重启、或者主机掉电重启等情况后,集群环境故障重启,对比共享存储数据库集群中所有节点的检查点序号值,得到最大检查点序号值。
示例性的,将最大检查点序号值记为MAX_CKPT_LSN。
步骤250、根据重做日志序号值大于或等于最大检查点序号值的重做日志数据,恢复数据页数据。
具体的,将各节点的重做日志序号值与最大检查点序号值对比,若重做日志序号值大于或等于最大检查点序号值,则根据对应的重做日志,将数据页的内容恢复到最新状态,将尚未刷盘的数据写入磁盘。
示例性的,将重做日志序号值记为REDO_LSN,若REDO_LSN≥MAX_CKPT_LSN,则重做该重做日志。
本发明实施例通过调整节点的检查点时广播其待调整检查点序号值,将其他节点页日志序号值小于或等于该待调整检查点序号值的缓存数据写入磁盘,在数据库宕机后,根据重做日志序号值大于或等于最大检查点序号值的重做日志数据,恢复数据页数据,该设置不会造成宕机后数据的丢失,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。
实施例三
本发明实施例所提供的共享存储数据库的数据处理装置可执行本发明任意实施例所提供的共享存储数据库的数据处理方法,具备执行方法相应的功能模块和有益效果。图3是本发明实施例三提供的共享存储数据库的数据处理装置的结构框图,如图3所示,该装置包括:第一获取模块310、广播模块320和刷盘模块330。
第一获取模块310,用于获取数据库中待调整检查点的待调整检查点序号值,数据库至少包括两个节点,待调整检查点序号值为待调整检查点调整后的检查点序号值。
广播模块320,用于广播待调整检查点序号值至其他节点。
刷盘模块330,用于将数据库中所有页日志序号值小于或等于待调整检查点序号值的数据页写入磁盘后,通知待调整节点调整待调整检查点,页日志序号值为各节点修改数据页时产生的记录序号值,重做日志用于记录对应节点修改数据页的操作。
本发明实施例通过调整节点的检查点时广播其待调整检查点序号值,将其他节点页日志序号值小于或等于该待调整检查点序号值的缓存数据写入磁盘,能够有效保存数据,在数据库宕机后,也不会造成数据的丢失,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。
可选的,该装置还包括:
第二获取模块,用于数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值;
数据恢复模块,用于根据重做日志序号值大于或等于最大检查点序号值的重做日志数据,恢复数据页数据。
可选的,任意节点修改数据页时,生成重做日志,当达到调整对应检查点的预设条件后,发起调整检查点操作,将页日志序号值小于待调整的检查点序号值的数据页写入磁盘。
可选的,调整对应检查点的预设条件,包括:
用于存储重做日志的剩余存储空间不足时发起调整检查点操作;和/或,
每隔预设时间发起调整检查点操作。
本发明实施例通过调整节点的检查点时广播其待调整检查点序号值,将其他节点页日志序号值小于或等于该待调整检查点序号值的缓存数据写入磁盘,在数据库宕机后,根据重做日志序号值大于或等于最大检查点序号值的重做日志数据,恢复数据页数据,该设置不会造成宕机后数据的丢失,解决了现有共享存储数据库集群环境下存在页断裂的问题,实现了数据存储的可靠性和有效性。
实施例四
图4为本发明实施例四提供的一种计算机设备的结构框图,如图4所示,该计算机设备包括处理器410、存储器420、输入装置430和输出装置440;计算机设备中处理器410的数量可以是一个或多个,图4中以一个处理器410为例;计算机设备中的处理器410、存储器420、输入装置72和输出装置73可以通过总线或其他方式连接,图4中以通过总线连接为例。
存储器420作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的共享存储数据库的数据处理方法对应的程序指令/模块(例如,共享存储数据库的数据处理装置中的第一获取模块310、广播模块320和刷盘模块330)。处理器410通过运行存储在存储器420中的软件程序、指令以及模块,从而执行计算机设备的各种功能应用以及数据处理,即实现上述的共享存储数据库的数据处理方法。
存储器420可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器420可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器420可进一步包括相对于处理器410远程设置的存储器,这些远程存储器可以通过网络连接至计算机设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置430可用于接收输入的数字或字符信息,以及产生与计算机设备的用户设置以及功能控制有关的键信号输入。输出装置440可包括显示屏等显示设备。
实施例五
本发明实施例五还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种共享存储数据库的数据处理方法,该方法包括:
获取数据库中待调整检查点的待调整检查点序号值,数据库至少包括两个节点,待调整检查点序号值为待调整检查点调整后的检查点序号值;
广播待调整检查点序号值至其他节点;
将数据库中所有页日志序号值小于或等于待调整检查点序号值的数据页写入磁盘后,通知待调整节点调整待调整检查点,页日志序号值为各节点修改数据页时产生的记录序号值,重做日志用于记录对应节点修改数据页的操作。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的共享存储数据库的数据处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
值得注意的是,上述搜索装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (10)

1.一种共享存储数据库的数据处理方法,其特征在于,包括:
获取数据库中待调整检查点的待调整检查点序号值,所述数据库至少包括两个节点,所述待调整检查点序号值为所述待调整检查点调整后的检查点序号值;
广播所述待调整检查点序号值至其他节点;
将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点,所述页日志序号值为各节点修改数据页时产生的记录序号值,所述重做日志用于记录对应节点修改数据页的操作。
2.根据权利要求1所述的共享存储数据库的数据处理方法,其特征在于,将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点之后,还包括:
数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值;
根据重做日志序号值大于或等于所述最大检查点序号值的重做日志数据,恢复数据页数据。
3.根据权利要求1所述的共享存储数据库的数据处理方法,其特征在于,任意节点修改数据页时,生成所述重做日志,当达到调整对应检查点的预设条件后,发起调整检查点操作,将所述页日志序号值小于待调整的检查点序号值的数据页写入磁盘。
4.根据权利要求3所述的共享存储数据库的数据处理方法,其特征在于,所述调整对应检查点的预设条件,包括:
用于存储重做日志的剩余存储空间不足时发起调整检查点操作;和/或,
每隔预设时间发起调整检查点操作。
5.一种共享存储数据库的数据处理装置,其特征在于,包括:
第一获取模块,用于获取数据库中待调整检查点的待调整检查点序号值,所述数据库至少包括两个节点,所述待调整检查点序号值为所述待调整检查点调整后的检查点序号值;
广播模块,用于广播所述待调整检查点序号值至其他节点;
刷盘模块,用于将数据库中所有页日志序号值小于或等于所述待调整检查点序号值的数据页写入磁盘后,通知所述待调整节点调整待调整检查点,所述页日志序号值为各节点修改数据页时产生的记录序号值。
6.根据权利要求5所述的共享存储数据库的数据处理装置,其特征在于,该装置还包括:
第二获取模块,用于数据库宕机后,对比所有节点的检查点序号值,得到最大检查点序号值;
数据恢复模块,用于根据重做日志序号值大于或等于所述最大检查点序号值的重做日志数据,恢复数据页数据。
7.根据权利要求5所述的共享存储数据库的数据处理装置,其特征在于,任意节点修改数据页时,生成所述重做日志,当达到调整对应检查点的预设条件后,发起调整检查点操作,将所述页日志序号值小于待调整的检查点序号值的数据页写入磁盘。
8.根据权利要求7所述的共享存储数据库的数据处理装置,其特征在于,所述调整对应检查点的预设条件,包括:
用于存储重做日志的剩余存储空间不足时发起调整检查点操作;和/或,
每隔预设时间发起调整检查点操作。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-4中任一所述的共享存储数据库的数据处理方法。
10.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-4中任一所述的共享存储数据库的数据处理方法。
CN201911296661.2A 2019-12-16 2019-12-16 一种共享存储数据库的数据处理方法、装置、设备及介质 Active CN111046024B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911296661.2A CN111046024B (zh) 2019-12-16 2019-12-16 一种共享存储数据库的数据处理方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911296661.2A CN111046024B (zh) 2019-12-16 2019-12-16 一种共享存储数据库的数据处理方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN111046024A true CN111046024A (zh) 2020-04-21
CN111046024B CN111046024B (zh) 2023-05-23

Family

ID=70236786

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911296661.2A Active CN111046024B (zh) 2019-12-16 2019-12-16 一种共享存储数据库的数据处理方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN111046024B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100141A (zh) * 2020-09-11 2020-12-18 北京金山云网络技术有限公司 一种数据页处理方法、装置及系统
CN112099996A (zh) * 2020-09-21 2020-12-18 天津神舟通用数据技术有限公司 基于页面更新序号的数据库集群多节点重做日志恢复方法
CN112131318A (zh) * 2020-11-30 2020-12-25 北京优炫软件股份有限公司 一种数据库集群中预写日志记录排序系统
CN112182010A (zh) * 2020-11-30 2021-01-05 北京金山云网络技术有限公司 脏页刷新方法和装置、存储介质和电子设备
CN113254271A (zh) * 2021-06-09 2021-08-13 上海达梦数据库有限公司 一种数据序列恢复方法、装置、设备及存储介质
CN113254271B (zh) * 2021-06-09 2024-05-31 上海达梦数据库有限公司 一种数据序列恢复方法、装置、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5043866A (en) * 1988-04-08 1991-08-27 International Business Machines Corporation Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery
US20070005664A1 (en) * 2005-06-30 2007-01-04 Microsoft Corporation Pre-image logging for database recovery
CN101145946A (zh) * 2007-09-17 2008-03-19 中兴通讯股份有限公司 一种基于消息日志的容错集群系统和方法
CN102999564A (zh) * 2012-11-06 2013-03-27 华为技术有限公司 写入数据的方法、装置和设备
CN106855822A (zh) * 2015-12-08 2017-06-16 阿里巴巴集团控股有限公司 用于分布式事务处理的方法及设备
US20180144015A1 (en) * 2016-11-18 2018-05-24 Microsoft Technology Licensing, Llc Redoing transaction log records in parallel
CN110019066A (zh) * 2017-09-21 2019-07-16 阿里巴巴集团控股有限公司 数据库处理方法及装置、系统
CN110543386A (zh) * 2019-09-16 2019-12-06 上海达梦数据库有限公司 一种数据存储方法、装置、设备和存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5043866A (en) * 1988-04-08 1991-08-27 International Business Machines Corporation Soft checkpointing system using log sequence numbers derived from stored data pages and log records for database recovery
US20070005664A1 (en) * 2005-06-30 2007-01-04 Microsoft Corporation Pre-image logging for database recovery
CN101145946A (zh) * 2007-09-17 2008-03-19 中兴通讯股份有限公司 一种基于消息日志的容错集群系统和方法
CN102999564A (zh) * 2012-11-06 2013-03-27 华为技术有限公司 写入数据的方法、装置和设备
CN106855822A (zh) * 2015-12-08 2017-06-16 阿里巴巴集团控股有限公司 用于分布式事务处理的方法及设备
US20180144015A1 (en) * 2016-11-18 2018-05-24 Microsoft Technology Licensing, Llc Redoing transaction log records in parallel
CN110019066A (zh) * 2017-09-21 2019-07-16 阿里巴巴集团控股有限公司 数据库处理方法及装置、系统
CN110543386A (zh) * 2019-09-16 2019-12-06 上海达梦数据库有限公司 一种数据存储方法、装置、设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
张效尉;王大羽;: "内存数据库故障恢复策略研究" *
盛业兴;陆阳;: "一个基于日志服务器的内存数据库恢复系统" *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100141A (zh) * 2020-09-11 2020-12-18 北京金山云网络技术有限公司 一种数据页处理方法、装置及系统
CN112099996A (zh) * 2020-09-21 2020-12-18 天津神舟通用数据技术有限公司 基于页面更新序号的数据库集群多节点重做日志恢复方法
CN112099996B (zh) * 2020-09-21 2022-04-05 天津神舟通用数据技术有限公司 基于页面更新序号的数据库集群多节点重做日志恢复方法
CN112131318A (zh) * 2020-11-30 2020-12-25 北京优炫软件股份有限公司 一种数据库集群中预写日志记录排序系统
CN112182010A (zh) * 2020-11-30 2021-01-05 北京金山云网络技术有限公司 脏页刷新方法和装置、存储介质和电子设备
CN112182010B (zh) * 2020-11-30 2021-03-12 北京金山云网络技术有限公司 脏页刷新方法和装置、存储介质和电子设备
CN112131318B (zh) * 2020-11-30 2021-03-16 北京优炫软件股份有限公司 一种数据库集群中预写日志记录排序系统
CN113254271A (zh) * 2021-06-09 2021-08-13 上海达梦数据库有限公司 一种数据序列恢复方法、装置、设备及存储介质
CN113254271B (zh) * 2021-06-09 2024-05-31 上海达梦数据库有限公司 一种数据序列恢复方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111046024B (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
CN111046024A (zh) 一种共享存储数据库的数据处理方法、装置、设备及介质
US8127174B1 (en) Method and apparatus for performing transparent in-memory checkpointing
CN106776130B (zh) 一种日志恢复方法、存储装置和存储节点
CN110543386B (zh) 一种数据存储方法、装置、设备和存储介质
CN108416040B (zh) 一种数据库修复方法、装置、终端设备及存储介质
CN109542682B (zh) 一种数据备份方法、装置、设备和存储介质
US9195543B2 (en) Method and device for detecting data reliability
US20060224636A1 (en) Page recovery using volume snapshots and logs
US20150213100A1 (en) Data synchronization method and system
CN110389858B (zh) 存储设备的故障恢复方法和设备
US20190317872A1 (en) Database cluster architecture based on dual port solid state disk
US10884871B2 (en) Systems and methods for copying an operating source volume
CN109491609B (zh) 一种缓存数据处理方法、装置、设备及可读存储介质
US20190227710A1 (en) Incremental data restoration method and apparatus
CN116680256B (zh) 数据库节点升级方法、装置和计算机设备
CN110351313B (zh) 数据缓存方法、装置、设备及存储介质
CN108664255B (zh) 一种软件升级方法及装置
CN105068760A (zh) 数据存储方法、数据存储装置和存储设备
CN109165117B (zh) 数据处理的方法和系统
CN111290881A (zh) 一种数据恢复方法、装置、设备及存储介质
CN102325171A (zh) 一种监控系统中数据的存储方法及其系统
CN112783688B (zh) 一种基于可用分区级的纠删码数据恢复方法及装置
CN114138566A (zh) 虚拟机的数据存储方法、装置、虚拟机及存储介质
CN113467805A (zh) 一种网络设备的固件回滚方法及相关装置
CN113448758A (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