[go: up one dir, main page]

CN112099999A - 一种存储系统的集群结构中元数据的恢复方法及系统 - Google Patents

一种存储系统的集群结构中元数据的恢复方法及系统 Download PDF

Info

Publication number
CN112099999A
CN112099999A CN202011093252.5A CN202011093252A CN112099999A CN 112099999 A CN112099999 A CN 112099999A CN 202011093252 A CN202011093252 A CN 202011093252A CN 112099999 A CN112099999 A CN 112099999A
Authority
CN
China
Prior art keywords
node
metadata
transaction
write
storage system
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.)
Withdrawn
Application number
CN202011093252.5A
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011093252.5A priority Critical patent/CN112099999A/zh
Publication of CN112099999A publication Critical patent/CN112099999A/zh
Withdrawn legal-status Critical Current

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
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种存储系统的集群结构中元数据的恢复方法及系统,全闪存储系统存储设备的元数据故障回切过程中,在掉线节点重新上线的时候,该节点所有模块都进行初始化操作,各个模块都进行配置信息的恢复操作,控制器回切的过程中使用单控模式进行,若完全恢复成功,才切换写入模式和业主节点,并恢复另一个节点的根节点信息,若在该控制器恢复的过程中再次发生故障,则由新上线的控制器进行控制器接管操作,通过读取记录在盘中的事务日志进行重做,保证数据的完整性。

Description

一种存储系统的集群结构中元数据的恢复方法及系统
技术领域
本发明涉及存储系统领域,特别是涉及一种存储系统的集群结构中元数据的恢复方法及系统。
背景技术
存储系统作为所有计算机相关业务的底层基础,对于其可靠性的要求十分高,因此在设计的时候需要考虑高可用性。一般通过集群方式来保障。一个集群中具有多个控制器(本专利以一个集群中有两个控制器为例),当其中的一个控制器发生故障无法提供服务时,存活的控制器需要接管故障控制器的所有业务,在该过程中上方业务不允许停止。
在单控故障的时候,将会由集群中的另一个控制器做接管。然后之前故障的控制器在经过处理(例如重启操作)重新加入集群的时候,两个控制器需要做一些操作来完成控制器的回切,即恢复之前的双控运行模式。
此处主要涉及到了上层业务I/O的处理、写缓存给事务模块返回的失败请求的重做、以及元数据树的根节点的恢复,以及写入模式和业主节点的切换。
在一般的设计中,控制器做回切的时候一般为双控进行,即此时写入模式和业主节点都切换为双控状态,但是一旦这种情况下其中一个控制器再次发生故障,则很难处理。
发明内容
本发明主要解决的技术问题是提供一种存储系统的集群结构中元数据的恢复方法及系统,能够。
为解决上述技术问题,本发明采用的一个技术方案是:提供一种存储系统的集群结构中元数据的恢复方法,包括以下步骤:S100,第一控制器中第一节点进行故障回切;S200,所述第一控制器判断故障回切过程中所述第一节点是否发生软件故障;S300,若所述第一节点没有发生软件故障,则第二控制器中第二节点进行故障回切;S400,若所述第一节点发生软件故障,则所述第二控制器中第二节点进行故障接管;S500,所述第一节点和所述第二节点通知元数据模块回切完成。
进一步,所述S100步骤中,所述第一节点进行故障回切时,所述第一节点进入静默状态,此时第一控制器新下达的业务加入暂存链表中;所述第一节点中写缓存模块开始下刷等待完成;所述第一节点切换归属节点和写入模式;所述第一节点进行事务重做,处理所述写缓存模块未完成的请求。
进一步,所述S300步骤中,所述第二节点进行故障回切时,所述第二节进行根节点恢复;所述第二节点切换切换归属节点和写入模式;所述第二节点进行事务重做;所述第一节点关闭静默状态。
进一步,所述S400步骤中,所述第二控制器中第二节点进行故障接管时,所述第一节点将内存事务数据存储到磁盘中;所述第二节点切换归属节点和写入模式;所述第二节点进行根节点恢复并读取磁盘中所述第一节点的事务数据,进行事务重做;所述第二节点关闭静默状态。
进一步,所述静默状态为上层业务无法下发到所述第一节点以及第二节点中。
进一步,所述写入模式为单控模式。
一种存储系统的集群结构中元数据的恢复系统,元数据对象模块、事务模块、写缓存模块;所述元数据对象模块负责管理元数据对象,负责ROOT区数据结构的初始化、更新、恢复以及故障回切;所述元数据对象包括LUN信息,B+树的根节点;所述事务模块中包含事务机制并进行原子性保证,将一个请求分为若干个子请求,当若干个子请求全部完成,则请求成功,当若干个子请求中有一个子请求未完成则表示失败,需要进行回滚重做,已完成的子请求也需要进行取消操作;所述写缓存模块负责将业务的处理在内存中进行缓存,所述写缓存模块中包含回写模式和连续写入模式。
进一步,所述回写模式为写缓存被划分出部分内存空间将事务模块发过来的请求进行缓存,所述元数据对象模块故障回切时将事务过来的请求进行下刷;所述连续写入模式直接将事务过来的请求进行下刷。
进一步,所述元数据对象模块中含有控制器;所述控制器进行故障回切。
本发明的有益效果是:能够处理这种多重故障的场景,并且能够为全闪存储的元数据模块的高可用性开发起到一定的作用,能够有效减少实现的开发周期。
附图说明
图1是本发明一种存储系统的集群结构中元数据的恢复方法中元数据模块控制器回切流程图;
图2是一种存储系统的集群结构中元数据的恢复系统架构图。
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述,以使本发明的优点和特征能更易于被本领域技术人员理解,从而对本发明的保护范围做出更为清楚明确的界定。
请参阅图1和图2,本发明实施例包括:
一种存储系统的集群结构中元数据的恢复方法,包括以下步骤:S100,第一控制器中第一节点进行故障回切;S200,判断回切过程中所述第一节点是否发生软件故障;S300,若所述第一节点没有发生软件故障,则第二控制器中第二节点进行故障回切;S400,若所述第一节点发生软件故障,则所述第二控制器中第二节点进行故障接管,所述第二节点读取记录在磁盘中的事务日志进行重做,保证数据的完整性;S500,所述第一节点和所述第二节点通知元数据模块回切完成。
S100中,第一控制器中第一节点进行故障回切时,所述第一节点进入静默状态,此时第一控制器新下达的I/O加入暂存链表中,在运行阶段会进行重做;所述第一节点中缓存模块开始下刷等待完成;所述第一节点切换ownerNode和writeMode为单控模式;所述第一节点进行事务重做。
S300中,所述第二节点进行故障回切时,所述第二节进行根节点恢复;所述第二节点切换ownerNode和writeMode为单控模式;所述第二节点进行事务重做;所述第一节点关闭静默状态。
S400中,所述第二控制器中第二节点进行故障接管时,所述第一节点将内存事务数据刷到磁盘中;所述第二节点切换ownerNode和writeMode为单控模式;所述第二节点进行根节点恢复并读取磁盘中所述第一节点的事务数据,进行事务重做;所述第二节点关闭静默状态。
其中静默状态为上层业务无法下发到所述第一节点以及第二节点中。
集群在以单控模式下运行,当另一个节点重新上线后,需要重新组成双控模式。此时涉及到控制器业务回切的操作,并且在此过程中业务I/O不中断。
在掉线节点重新上线的时候,该节点所有模块都进行初始化操作,各个模块都进行配置信息的恢复操作。由于所有配置信息都在存活节点中保留,因此重新上线的节点只需保证同步时机即可。
其中,WriteMode为写模式,表示上方的请求发到元数据模块时是以什么方式进行处理的,此处包括LOGGING模式和CACHING模式。分别对应于单控透写模式与双控镜像模式。
OwnerNode为归属节点。为了使集群中每个节点都能够均衡负载,采取上层请求转发的功能,请求将被转发到其ownerNode进行处理。
见图2,基于与前述实施例中一种存储系统的集群结构中元数据的恢复方法同样的发明构思,本说明书实施例还提供一种存储系统的集群结构中元数据的恢复系统,包括元数据对象模块、事务模块、写缓存模块;所述元数据对象模块负责管理元数据对象,负责ROOT区数据结构的初始化、更新、恢复以及故障回切;所述元数据对象包括LUN信息,B+树的根节点;所述事务模块中包含事务机制并进行原子性保证,将一个请求分为若干个子请求,当若干个子请求全部完成,则请求成功,当若干个子请求中有一个子请求未完成则表示失败,需要进行回滚重做,需要进行回滚重做,已完成的子请求也需要进行取消操作;所述写缓存模块负责将业务I/O的处理在内存中进行缓存,根据业务需要,分为WRITE_BACK模式和WRITE_THROUGH模式两种。在WRITE_BACK模式中,写缓存被划分出部分内存空间将事务模块发过来的请求进行缓存,所述元数据对象模块故障回切时将事务过来的请求进行下刷;而在WRITE_THROUGH模式下则直接将事务过来的请求进行下刷。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (9)

1.一种存储系统的集群结构中元数据的恢复方法,其特征在于,包括以下步骤:S100,第一控制器中第一节点进行故障回切;S200,所述第一控制器判断故障回切过程中所述第一节点是否发生软件故障;S300,若所述第一节点没有发生软件故障,则第二控制器中第二节点进行故障回切;S400,若所述第一节点发生软件故障,则所述第二控制器中第二节点进行故障接管;S500,所述第一节点和所述第二节点通知元数据模块回切完成。
2.根据权利要求1所述的一种存储系统的集群结构中元数据的恢复方法,其特征在于:所述S100步骤中,所述第一节点进行故障回切时,所述第一节点进入静默状态,此时第一控制器新下达的业务加入暂存链表中;所述第一节点中写缓存模块开始下刷;所述第一节点切换归属节点和写入模式;所述第一节点进行事务重做,处理所述写缓存模块未完成的请求。
3.根据权利要求1所述的一种存储系统的集群结构中元数据的恢复方法,其特征在于:所述S300步骤中,所述第二节点进行故障回切时,所述第二节进行根节点恢复;所述第二节点切换切换归属节点和写入模式;所述第二节点进行事务重做;所述第一节点关闭静默状态。
4.根据权利要求1所述的一种存储系统的集群结构中元数据的恢复方法,其特征在于:所述S400步骤中,所述第二控制器中第二节点进行故障接管时,所述第一节点将内存事务数据存储到磁盘中;所述第二节点切换归属节点和写入模式;所述第二节点进行根节点恢复并读取磁盘中所述第一节点的事务数据,进行事务重做;所述第二节点关闭静默状态。
5.根据权利要求3或4所述的一种存储系统的集群结构中元数据的恢复方法,其特征在于:所述静默状态为上层业务无法下发到所述第一节点以及第二节点中。
6.根据权利要求2或3或4所述的一种存储系统的集群结构中元数据的恢复方法,其特征在于:所述写入模式为单控模式。
7.一种存储系统的集群结构中元数据的恢复系统,其特征在于,包括元数据对象模块、事务模块、写缓存模块;所述元数据对象模块负责管理元数据对象,负责ROOT区数据结构的初始化、更新、恢复以及故障回切;所述元数据对象包括LUN信息,B+树的根节点;所述事务模块中包含事务机制并进行原子性保证,将一个请求分为若干个子请求,当若干个子请求全部完成,则请求成功,当若干个子请求中有一个子请求未完成则表示失败,需要进行回滚重做,已完成的子请求也需要进行取消操作;所述写缓存模块负责将业务的处理在内存中进行缓存,所述写缓存模块中包含回写模式和连续写入模式。
8.根据权利要求7所述的一种存储系统的集群结构中元数据的恢复系统,其特征在于:所述回写模式为写缓存被划分出部分内存空间将事务模块发过来的请求进行缓存,所述元数据对象模块故障回切时将事务过来的请求进行下刷;所述连续写入模式直接将事务过来的请求进行下刷。
9.根据权利要求7所述的一种存储系统的集群结构中元数据的恢复系统,其特征在于:所述元数据对象模块中含有控制器;所述控制器进行故障回切。
CN202011093252.5A 2020-10-12 2020-10-12 一种存储系统的集群结构中元数据的恢复方法及系统 Withdrawn CN112099999A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011093252.5A CN112099999A (zh) 2020-10-12 2020-10-12 一种存储系统的集群结构中元数据的恢复方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011093252.5A CN112099999A (zh) 2020-10-12 2020-10-12 一种存储系统的集群结构中元数据的恢复方法及系统

Publications (1)

Publication Number Publication Date
CN112099999A true CN112099999A (zh) 2020-12-18

Family

ID=73783654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011093252.5A Withdrawn CN112099999A (zh) 2020-10-12 2020-10-12 一种存储系统的集群结构中元数据的恢复方法及系统

Country Status (1)

Country Link
CN (1) CN112099999A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115309591A (zh) * 2022-10-10 2022-11-08 浪潮电子信息产业股份有限公司 一种全闪存储系统的恢复方法及相关装置
CN118093251A (zh) * 2024-04-25 2024-05-28 苏州元脑智能科技有限公司 一种故障处理方法、装置及电子设备和存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115309591A (zh) * 2022-10-10 2022-11-08 浪潮电子信息产业股份有限公司 一种全闪存储系统的恢复方法及相关装置
CN118093251A (zh) * 2024-04-25 2024-05-28 苏州元脑智能科技有限公司 一种故障处理方法、装置及电子设备和存储介质

Similar Documents

Publication Publication Date Title
CA2921108C (en) System and method for failover
JP5536939B2 (ja) フェイルオーバシステムおよび方法
CA2288016C (en) Method and system for recovery in a partitioned shared nothing database system using virtual shared disks
AU2005207573B2 (en) Geographically distributed clusters
US7987158B2 (en) Method, system and article of manufacture for metadata replication and restoration
JP5425922B2 (ja) ストレージ・デバイス上のデータ書き込みを実行する方法、システム、及びコンピュータ・プログラム
JP4277873B2 (ja) トランザクション処理装置、トランザクション処理方法
US20070220059A1 (en) Data processing node
US9361213B2 (en) Method and apparatus for efficient remote copy
JP5201133B2 (ja) 二重化システム、システム制御方法およびシステム制御プログラム
CN112099999A (zh) 一种存储系统的集群结构中元数据的恢复方法及系统
AU2005207572A1 (en) Cluster database with remote data mirroring
CN105938446B (zh) 基于rdma和硬件事务性内存支持的数据复制容错方法
JPH10133927A (ja) コンピュータシステムおよびファイル管理方法
JP2006293910A (ja) 安全で高速なデータベース・レプリケーション技術
CN114722121A (zh) 一种数据库集群间主备方法及装置
CN118069666A (zh) 一种基于存算分离架构的PostgreSQL动态可转移表空间方法
JP2712819B2 (ja) 二重化ファイルの動的コピー制御方式
WO2024193138A1 (zh) 事务处理方法及相关设备
JP2013084293A (ja) 二重化システム、制御方法および制御プログラム
CN115421972A (zh) 一种分布式数据库故障恢复的方法与系统
Morin et al. A two-level checkpoint algorithm in a highly-available parallel single level store system

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20201218

WW01 Invention patent application withdrawn after publication