CN115220639A - 管理存储系统的方法、电子设备和计算机程序产品 - Google Patents

管理存储系统的方法、电子设备和计算机程序产品 Download PDF

Info

Publication number
CN115220639A
CN115220639A CN202110404906.XA CN202110404906A CN115220639A CN 115220639 A CN115220639 A CN 115220639A CN 202110404906 A CN202110404906 A CN 202110404906A CN 115220639 A CN115220639 A CN 115220639A
Authority
CN
China
Prior art keywords
partition
disk
backup
persistent storage
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.)
Pending
Application number
CN202110404906.XA
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.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
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 EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN202110404906.XA priority Critical patent/CN115220639A/zh
Priority to US17/517,913 priority patent/US11662916B2/en
Publication of CN115220639A publication Critical patent/CN115220639A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1417Boot up procedures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/30Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations
    • 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/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开的实施例提供了一种管理存储系统的方法、电子设备和计算机程序产品。在此描述的方法包括在备份模式中清理持久性存储盘以提高持久性存储盘的写入速率。该方法还包括在经清理的持久性存储盘中创建库分区。该方法还包括将易失性存储设备中的缓存数据写入库分区。利用本申请的管理存储系统的方案,能够在仅具有单个持久性存储盘的存储设备中,以较高的写入速率将易失性存储设备中的缓存数据写入持久性存储盘中,从而实现高效的内存持久化。

Description

管理存储系统的方法、电子设备和计算机程序产品
技术领域
本公开的实施例涉及数据存储领域,并且具体地,涉及用于管理存储系统的方法、电子设备和计算机程序产品。
背景技术
当前的存储系统通常具有多个层级的存储介质,例如读写速度较快、存储容量较小的主存储器(也称为内存)和读写速度较慢、存储容量较大的辅助存储器(也称为外部存储器)。主存储器一般是易失性存储设备,例如动态随机存取存储器(DRAM)。辅助存储器一般是非易失性存储设备,例如固态硬盘(SSD)、机械硬盘(HDD)等。在存储系统断电时,需要将存储在易失性存储设备中的数据及时地备份到非易失性存储设备中以保护用户数据,这种操作通常称为永久内存持久化(Permanent Memory Persistence,PMP)。
发明内容
在本公开的第一方面,提供了一种管理存储系统的方法。该方法包括在备份模式中清理持久性存储盘以提高持久性存储盘的写入速率。该方法还包括在经清理的持久性存储盘中创建库分区。该方法还包括将易失性存储设备中的缓存数据写入库分区。
在本公开的第二方面,提供了一种电子设备。该电子设备包括处理器以及与处理器耦合的存储器,存储器具有存储于其中的指令,指令在被处理器执行时使设备执行动作。动作包括在备份模式中清理持久性存储盘以提高持久性存储盘的写入速率。动作还包括在经清理的持久性存储盘中创建库分区。动作还包括将易失性存储设备中的缓存数据写入库分区。
在本公开的第三方面中,提供了一种计算机程序产品,计算机程序产品被有形地存储在计算机可读介质上并且包括机器可执行指令,机器可执行指令在被执行时使机器执行根据第一方面的方法。
在本公开的实施例中,利用本申请的管理存储系统方案,能够在仅具有单个持久性存储盘的存储设备中,以较高的写入速率将易失性存储设备中的缓存数据写入持久性存储盘中,从而实现高效的内存持久化。
提供发明内容部分是为了简化的形式来介绍对概念的选择,它们在下文的具体实施方式中将被进一步描述。发明内容部分无意标识本公开的实施例的关键特征或主要特征,也无意限制本公开的范围。
附图说明
通过结合附图对本公开的示例性实施例进行更详细的描述,本公开的实施例的上述以及其它目的、特征和优势将变得更加明显,其中,在本公开的示例性实施例中,相同的参考标号通常代表相同部件。
图1示出了本公开的实施例能够在其中被实现的存储系统的示意图;
图2示出了根据本公开的一些实施例的备份缓存数据的过程的示意图;
图3示出了根据本公开的一些实施例的恢复缓存数据的第一过程的示意图;
图4示出了根据本公开的一些实施例的恢复缓存数据的第二过程的示意图;
图5示出了根据本公开的一些实施例的管理存储系统的流程图;以及
图6示出了可以用来实施本公开的实施例的示例计算设备的框图。
具体实施方式
下面将参考附图中示出的若干示例实施例来描述本公开的实施例的原理。虽然附图中显示了本公开的优选实施例,但应当理解,描述这些实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制本公开的范围。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实施例”和“一些实施例”表示“至少一个示例实施例”。术语“另一实施例”表示“至少一个另外的实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
如上文所提及的,易失性存储设备中的数据在断电时会丢失。目前,针对企业级存储系统已经提出了一些数据恢复的方法。利用这些方法,以电池供电的存储系统可以在主电源断开后恢复易失性存储设备中的至少一部分的数据。但是,由电池供电的存储系统难以长时间运行。一旦电池的电量用尽,易失性存储设备中的这些被恢复的数据将永久地丢失。因此,需要及时地将这些被恢复的数据存储到非易失性存储设备中进行备份,也即,执行PMP。这样,即使电池的电量用尽,这些数据也将完好地存储在非易失性存储设备中。
为了实现有效的PMP,通常在非易失性的存储设备中设置一块附加的持久性存储盘以专用于备份易失性存储设备中的数据。持久性存储盘可以是任何合适的非易失性存储盘,例如SSD盘、NAND闪存盘。在电池供电的情况下,存储系统可以将易失性存储设备中需要备份的数据存储到专用的持久性存储盘中。当主电源恢复时,存储系统可以将备份在专用的持久性存储盘中的数据恢复到易失性的主存储器中。然而,PMP的这种实现方式需要在存储设备中设置附加的持久性存储盘,因而增加了存储设备的体积并且增加了开销。
还提出了另一种实现PMP的方式。在该方案中,无需在存储设备中设置附加的持久性存储盘,而是在存储设备的单个持久性存储盘中预留一个分区用于备份易失性存储设备中的数据。然而,由于存储设备中只设置了单个持久性存储盘,并且该持久性存储盘用于用户数据的正常读写,该持久性存储盘的写入速率维持在较低的水平。
应理解的是,持久性存储盘的写入速率随着写入次数的增加而逐渐降低。特别地,例如针对SSD盘和NAND闪存盘,写入速率随着写入次数的增加会发生较大程度的下降。例如,处于出厂状态的持久性存储盘具有最高的写入速率,而经历多次写入之后的持久性存储盘的写入速率将维持在较低的水平。因此,在PMP的这种实现方式中,由于持久性存储盘的较低的写入速率,由电池供电的存储系统难以在较短的时间内将易失性存储设备中的数据写入持久性存储盘。
根据本公开的实施例,在备份模式中清理持久性存储盘以提高持久性存储盘的写入速率。在该方案中,在经清理的持久性存储盘中创建库分区。在该方案中,将易失性存储设备中的缓存数据写入库分区。以此方式,能够在仅具有单个持久性存储盘的存储设备中,以较高的写入速率将易失性存储设备中的数据写入持久性存储盘中,从而实现高效的PMP。
以下参考图1至图5来说明本公开的基本原理和若干示例实施例。应当理解,给出这些示例性实施例仅是为了使本领域技术人员能够更好地理解进而实现本公开的实施例,而并非以任何方式限制本公开的范围。
图1示出了本公开的实施例能够在其中被实现的存储系统100。如图1所示,存储系统100包括第一存储设备110、第二存储设备120和易失性存储设备130。第一存储设备110可以用于存储用户数据。第二存储设备120可以用于备份第一存储设备110中的用户数据。易失性存储设备130可以用于存储操作系统或其他正在运行中的程序的缓存数据132。第一存储设备110和第二存储设备120可以是非易失性的存储设备。第一存储设备110和第二存储设备120可以是不同的物理存储设备。
第一存储设备110可以包括单个非易失性的持久性存储盘112。持久性存储盘112的示例包括使用不同接口的SSD盘、NAND闪存盘。优选地,持久性存储盘112是嵌入式的SSD盘。持久性存储盘112可以具有多个分区,例如可以包括引导分区(boot partition)114。引导分区114中可以存储引导系统的镜像数据。引导系统可以是一种专用的操作系统。通过加载该引导系统可以执行各种进程,例如清理(purge)进程、持久化(PMP)进程等。持久性存储盘112还可以包括根分区、固件分区等(下文中统称为其他分区116)。根分区中可以存储计算设备的操作系统的镜像数据,例如Linux操作系统的镜像数据。
类似地,第二存储设备120可以包括非易失性的备份盘122。备份盘122可以是任何合适的非易失性存储盘,例如SSD盘、HDD盘等。备份盘122可以包括多个存储盘。由于第二存储设备120用于备份第一存储设备110中的用户数据,备份盘122可以相应地具有备份引导分区124。备份引导分区124可以存储引导分区114的所有数据。第二存储设备120还可以包括备份库分区126。备份库分区126可以用于存储要备份的缓存数据。相关细节将参考图3和图4进行详细描述。
易失性存储设备130可以是用于存储缓存数据132的易失性存储设备。易失性存储设备130的示例可以包括DRAM、静态随机存取器(SRAM)等。缓存数据132可以包括系统运行过程中产生的数据,例如输入/输出(I/O)缓存数据134。I/O缓存数据134可以是在主电源断开时需要被备份到非易失性存储设备的缓存数据。
应当理解,图1所示出的存储系统100仅仅是示例性的,而不应当构成对本公开所描述的实现的功能和范围的任何限制。
图2示出了根据本公开的一些实施例的备份缓存数据的示意图200。如上所述,在主电源断开时,以电池供电的存储系统100可以重启并且恢复易失性存储设备130中的至少一部分的数据。为了保护这些被恢复的数据,需要及时地将这些数据从易失性存储设备备份到非易失性存储设备中。根据本申请的管理存储系统100的方案,存储系统100在备份模式中清理持久性存储盘112。在一些实施例中,备份模式可以指利用存储系统100自身预存储的有限容量电源供电的模式。例如,备份模式可以是指由电池供电的低功率模式。例如,在由电池供电的存储系统100重启后,被恢复的数据中可以包括用于管理存储系统100的进程数据。这些进程可以包括用于监测电源模式的监测进程、用于清理持久性存储盘112的清理进程和用于执行PMP的PMP进程等。在电池供电的情况下,监测进程可以执行并且监测到存储系统100处于由电池供电的低功率模式。附加地或备选地,备份模式也可以是由用户指定开启的模式。例如,用户可以按照需求开启备份模式。在这种情况下,要备份的I/O缓存数据134可以是用户按照其需求需要备份的数据,而不必是在断电之后被恢复的数据。
在备份模式中,存储系统100清理持久性存储盘112以提高持久性存储盘112的写入速率。清理操作可以指擦除持久性存储盘112上的用户数据并使其恢复到出厂状态。例如,经清理的持久性存储盘112不再包括初始的引导分区114和其他分区116。在一些实施例中,可以经由命名空间格式化操作来清理持久性存储盘112。在一些实施例中,可以由清理进程执行清理持久性存储盘112的操作。应理解,相比已经写入用户数据的持久性存储盘112,经清理的持久性存储盘112可以具有更高的写入速率。因此,利用清理操作,可以在更短的时间内将I/O缓存数据134从易失性存储设备130备份到持久性存储盘112中。针对存储系统100由电池供电的情况,由于电池仅能支持较短时间的备份操作,这种方式可以更好地实现PMP。
如上所述,经清理的持久性存储盘112不再包括初始的引导分区114和其他分区116。因此,持久性存储盘112的盘空间可以被重新分区。在一些实现中,存储系统100可以利用PMP进程在持久性存储盘112中创建库分区216,以用于备份易失性存储设备130中的I/O缓存数据134。库分区216可以是专用于存储待备份的I/O缓存数据134的分区。在一些实施例中,可以在经清理的持久性存储盘112中创建引导分区占位符214,引导分区占位符214与库分区216可以占据不同的盘空间。引导分区占位符214可以与持久性存储盘112中的引导分区114相对应,以用于引导分区114的后续恢复。以此方式,将I/O缓存数据134存储到库分区216的操作将不会影响引导分区114的恢复,继而不会影响持久性存储盘112的初始分区的恢复。
基于所创建的库分区216,存储系统100将易失性存储设备130中要备份的缓存数据写入库分区216。在一些实现中,存储系统100可以利用PMP进程将I/O缓存数据134写入所创建的库分区216。由于持久性存储盘112是非易失性的,因此存储在持久性存储盘112中的I/O缓存数据134在电池电量耗尽时也不会丢失。以此方式,可以实现有效的PMP。
以上参考图2描述了将易失性存储设备130中的I/O缓存数据134备份到非易失性的第一存储设备110中的过程。下文将参考图3和图4描述将I/O缓存数据134恢复到易失性存储设备130中的过程。
图3示出了根据本公开的一些实施例的恢复缓存数据的第一过程的示意图300。在恢复模式中,存储系统100可以基于备份盘122中关于持久性存储盘112的备份数据来恢复持久性存储盘112。如图3所示,备份盘122可以位于第二存储设备120中,并且与持久性存储盘112位于不同的存储设备。恢复模式可以指由市电供电的主电源模式。例如,当供电恢复时,存储系统100可以重启并且监测进程可以监测到存储系统100处于主电源模式。附加地或备选地,恢复模式也可以是由用户指定开启的模式。例如,用户可以按照需求开启恢复模式。
在恢复模式中,存储系统100可以基于备份盘122的第一分区中与引导分区114有关的备份数据,在引导分区占位符214处恢复引导分区114。备份盘122的第一分区可以是如图3所示的备份引导分区124。如上所述,备份引导分区124可以存储引导分区114的所有数据,包括引导分区114中的引导系统的镜像数据。在一些实施例中,在恢复模式中,存储系统100可以利用基本输入输出系统(BIOS)来基于备份引导分区124恢复引导分区114。BIOS可以将引导系统的镜像数据从备份引导分区124恢复到引导分区114,以用于执行例如监测进程、PMP进程等。
利用被恢复的引导分区114中的引导系统,存储系统100可以将I/O缓存数据134从库分区216恢复到易失性存储设备130。在一些实施例中,存储系统100可以利用引导系统直接将I/O缓存数据134存储到易失性存储设备130中。在一些实施例中,存储系统100可以先将I/O缓存数据134从库分区216存储到备份盘122的第二分区。第二分区可以是如图3所示的备份库分区126。
如上所述,备份库分区126可以用于存储库分区216中的I/O缓存数据134。由于第二存储设备120是非易失性的存储设备,因此即使主电源再次断开,缓存数据134也不会丢失。此外,由于I/O缓存数据134从库分区216中被移除,可以释放持久性存储盘112中由库分区216占据的盘空间。换句话说,当I/O缓存数据134被存储在备份库分区126时,存储系统100可以将持久性存储盘112中被释放的盘空间重新分区,以用于持久性存储盘112的其他分区116的后续恢复。
图4示出了根据本公开的一些实施例的恢复缓存数据的第二过程的示意图400。在库分区126占据的盘空间被释放之后,存储系统100可以基于备份盘122的第一分区中与其他分区116有关的备份数据,在经清理的持久性存储盘112中恢复其他分区116。备份盘122的第一分区可以是备份引导分区124。除了与引导分区114有关的备份数据以外,备份引导分区124还可以包括与其他分区116有关的备份数据。因此,存储系统100可以利用引导系统在持久性存储盘112中恢复其他分区116。以此方式,在恢复模式中,经清理的持久性存储盘112可以恢复到清理前的状态,以用于以正常模式存储用户数据。
在恢复模式中,存储系统100还可以将缓存数据134从备份盘122的备份库分区126存储到易失性存储设备130。存储系统100可以利用引导系统中的PMP进程将缓存数据134恢复到易失性存储设备130中。以此方式,在恢复模式中,易失性存储设备130中的I/O缓存数据134可以被恢复以用于后续执行。
图5示出了根据本公开的实施例的管理数据系统的示例方法500的流程图。方法500例如可以在如图1所示的存储系统100中实现。应当理解,方法500还可以包括未示出的附加动作和/或可以省略所示出的动作,本公开的范围在此方面不受限制。以下结合图1-4来描述方法500。
在框510处,在备份模式中清理持久性存储盘112,以提高持久性存储盘112的写入速率。在一些实施例中,备份模式可以是由电池供电的低功率模式。在一些实施中,可以经由命名空间格式化操作来清理持久性存储盘112。
在框520处,在经清理的持久性存储盘112中创建库分区216。在一些实施例中,可以在经清理的持久性存储盘112中创建引导分区占位符214。引导分区占位符214和库分区216占用不同的盘空间,以用于持久性存储盘112的引导分区114的后续恢复。
在框530处,将易失性存储设备130中的缓存数据写入库分区216。在一些实施例中,缓存数据可以包括I/O缓存数据。存储系统100可以将要备份的I/O缓存数据134从易失性存储设备130存储到库分区216。
在一些实施例中,在恢复模式中,存储系统100还可以基于备份盘112的第一分区中与引导分区114有关的备份数据,在引导分区占位符处214恢复引导分区114。备份盘112的第一分区可以是备份引导分区124。备份盘122和持久性存储盘112位于不同的存储设备。在一些实施例中,恢复模式可以是由市电供电的主电源模式。
在一些实施例中,存储系统100可以利用被恢复的引导分区114中的引导系统,将I/O缓存数据134从库分区216恢复到易失性存储设备130。在一些实施例中,存储系统100可以将I/O缓存数据134从库分区216存储到备份盘122的第二分区,例如备份库分区126。存储系统100还可以将I/O缓存数据134从备份盘122的第二分区存储到易失性存储设备130。
在一些实施例中,存储系统100还可以基于备份盘122的第一分区中与持久性存储盘112中除引导分区114之外的其他分区116有关的备份数据,在经清理的持久性存储盘112中恢复其他分区116。
利用上述方法500,存储系统100能够在仅具有单个持久性存储盘112的存储设备110中,以较高的写入速率将易失性存储设备130中的数据写入持久性存储盘112中,从而实现高效的PMP。此外,存储系统100可以在恢复模式中将持久性存储盘恢复到正常使用状态,以用于存储用户数据。
图6示出了可以用来实施本公开内容的实施例的示例设备600的示意性框图。例如,设备600可以在如图1所示的存储系统100处实现。如图6所示,设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的计算机程序指令或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序指令,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。CPU 601、ROM 602以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
上文所描述的各个过程和处理,例如方法200,可由处理单元601执行。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序被加载到RAM 603并由CPU 601执行时,可以执行上文描述的方法200的一个或多个动作。
本公开可以是方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是——但不限于——电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、SRAM、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (15)

1.一种管理存储系统的方法,包括:
在备份模式中清理持久性存储盘以提高所述持久性存储盘的写入速率;
在经清理的所述持久性存储盘中创建库分区;以及
将易失性存储设备中的缓存数据写入所述库分区。
2.根据权利要求1所述的方法,其中创建库分区包括:
在经清理的所述持久性存储盘中创建引导分区占位符,所述引导分区占位符和所述库分区占用不同的盘空间以用于所述持久性存储盘的引导分区的恢复。
3.根据权利要求2所述的方法,还包括:
在恢复模式中,基于备份盘的第一分区中与所述引导分区有关的备份数据,在所述引导分区占位符处恢复所述引导分区,所述备份盘和所述持久性存储盘位于不同的存储设备;
利用被恢复的所述引导分区中的引导系统,将所述缓存数据从所述库分区恢复到所述易失性存储设备;以及
基于所述备份盘的第一分区中与所述持久性存储盘中除所述引导分区之外的其他分区有关的备份数据,在经清理的所述持久性存储盘中恢复所述其他分区。
4.根据权利要求3所述的方法,其中将所述缓存数据从所述库分区恢复到所述易失性存储设备包括:
将所述缓存数据从所述库分区存储到所述备份盘的第二分区;以及
将所述缓存数据从所述备份盘的第二分区存储到所述易失性存储设备。
5.根据权利要求1所述的方法,其中所述备份模式是由电池供电的低功率模式。
6.根据权利要求3所述的方法,其中所述恢复模式是由市电供电的主电源模式。
7.根据权利要求1所述的方法,其中所述缓存数据包括I/O缓存数据。
8.一种电子设备,包括:
处理器;以及
与所述处理器耦合的存储器,所述存储器具有存储于其中的指令,所述指令在被处理器执行时使所述设备执行动作,所述动作包括:
在备份模式中清理持久性存储盘以提高所述持久性存储盘的写入速率;
在经清理的所述持久性存储盘中创建库分区;以及
将易失性存储设备中的缓存数据写入所述库分区。
9.根据权利要求8所述的设备,其中创建库分区包括:
在经清理的所述持久性存储盘中创建引导分区占位符,所述引导分区占位符和所述库分区占用不同的盘空间以用于所述持久性存储盘的引导分区的恢复。
10.根据权利要求8所述的设备,所述动作还包括:
在恢复模式中,基于备份盘的第一分区中与所述引导分区有关的备份数据,在所述引导分区占位符处恢复所述引导分区,所述备份盘和所述持久性存储盘位于不同的存储设备;
利用被恢复的所述引导分区中的引导系统,将所述缓存数据从所述库分区恢复到所述易失性存储设备;以及
基于所述备份盘的第一分区中与所述持久性存储盘中除所述引导分区之外的其他分区有关的备份数据,在经清理的所述持久性存储盘中恢复所述其他分区。
11.根据权利要求10所述的设备,其中将所述缓存数据从所述库分区恢复到所述易失性存储设备包括:
将所述缓存数据从所述库分区存储到所述备份盘的第二分区;以及
将所述缓存数据从所述备份盘的第二分区存储到所述易失性存储设备。
12.根据权利要求8所述的设备,其中所述备份模式是由电池供电的低功率模式。
13.根据权利要求10所述的设备,其中所述恢复模式是由市电供电的主电源模式。
14.根据权利要求8所述的设备,其中所述缓存数据包括I/O缓存数据。
15.一种计算机程序产品,所述计算机程序产品被有形地存储在计算机可读介质上并且包括机器可执行指令,所述机器可执行指令在被执行时使机器执行根据权利要求1至7中任一项所述的方法。
CN202110404906.XA 2021-04-15 2021-04-15 管理存储系统的方法、电子设备和计算机程序产品 Pending CN115220639A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110404906.XA CN115220639A (zh) 2021-04-15 2021-04-15 管理存储系统的方法、电子设备和计算机程序产品
US17/517,913 US11662916B2 (en) 2021-04-15 2021-11-03 Method, electronic device and computer program product for managing a storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110404906.XA CN115220639A (zh) 2021-04-15 2021-04-15 管理存储系统的方法、电子设备和计算机程序产品

Publications (1)

Publication Number Publication Date
CN115220639A true CN115220639A (zh) 2022-10-21

Family

ID=83602359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110404906.XA Pending CN115220639A (zh) 2021-04-15 2021-04-15 管理存储系统的方法、电子设备和计算机程序产品

Country Status (2)

Country Link
US (1) US11662916B2 (zh)
CN (1) CN115220639A (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230145690A1 (en) * 2021-11-10 2023-05-11 Samsung Electronics Co., Ltd. Method for preserving data in electronic device initialization situation and electronic device therefor

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251323B (en) * 1990-12-31 1994-10-12 Intel Corp Disk emulation for a non-volatile semiconductor memory
US6073221A (en) * 1998-01-05 2000-06-06 International Business Machines Corporation Synchronization of shared data stores through use of non-empty track copy procedure
US6578121B1 (en) * 2001-02-05 2003-06-10 Emc Corporation File mapping system and related techniques
KR100746198B1 (ko) * 2005-07-08 2007-08-06 삼성전자주식회사 데이터 저장장치, 데이터 저장방법, 및 그 기록매체
US7886190B2 (en) 2006-09-29 2011-02-08 Intel Corporation System and method for enabling seamless boot recovery
JP4536785B2 (ja) * 2008-02-01 2010-09-01 富士通株式会社 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法
JP5793712B2 (ja) * 2010-03-01 2015-10-14 パナソニックIpマネジメント株式会社 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
US9454214B2 (en) 2013-03-12 2016-09-27 Intel Corporation Memory state management for electronic device
US10042710B2 (en) * 2014-09-16 2018-08-07 Actifio, Inc. System and method for multi-hop data backup
US10126950B2 (en) 2014-12-22 2018-11-13 Intel Corporation Allocating and configuring persistent memory
US20180107596A1 (en) 2016-10-13 2018-04-19 Microsoft Technology Licensing, Llc Battery-based data persistence management in computing systems
US10176052B2 (en) * 2017-04-24 2019-01-08 International Business Machines Corporation Snapshot backup with unified restore information
US11360862B2 (en) * 2020-10-29 2022-06-14 EMC IP Holding Company LLC System and method for managing backup operations of storage devices in a backup storage system using cluster evaluations based on usage telemetry

Also Published As

Publication number Publication date
US20220334732A1 (en) 2022-10-20
US11662916B2 (en) 2023-05-30

Similar Documents

Publication Publication Date Title
US9569518B2 (en) Efficiently storing and retrieving data and metadata
US10949314B2 (en) Method and apparatus for failure recovery of storage device
US9152351B2 (en) Storage device and method for backing up source volume
CN104823160A (zh) 虚拟机-保留主机更新
US11099735B1 (en) Facilitating the recovery of full HCI clusters
US10083087B1 (en) Managing backup copies in cascaded data volumes
CN109086425B (zh) 用于数据库的数据处理方法和装置
US10795579B2 (en) Methods, apparatuses, system and computer program products for reclaiming storage units
US10042570B2 (en) Tape backup and restore in a disk storage environment with intelligent data placement
US10963182B2 (en) System and method for on-demand recovery points
US9933953B1 (en) Managing copy sessions in a data storage system to control resource consumption
CN115328407A (zh) 一种缓存盘更换方法、装置、设备、存储介质
CN115220639A (zh) 管理存储系统的方法、电子设备和计算机程序产品
US9910747B2 (en) Parallel mirrored copying with write consistency
US11169933B2 (en) Integration of application indicated maximum time to cache for a two-tiered cache management mechanism
US10289326B2 (en) Optimized data layout for object store system
KR20150094292A (ko) 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치
KR20110052902A (ko) 컴퓨팅 시스템 및 컴퓨팅 시스템의 메모리 관리 방법
CN111857560A (zh) 用于管理数据的方法、设备和计算机程序产品
US20190332286A1 (en) Method, apparatus and computer program product for managing storage system
CN114385412A (zh) 存储管理方法、设备和计算机程序产品
US20160170678A1 (en) Committing data across multiple, heterogeneous storage devices
CN113590378A (zh) 存储管理的方法、设备和计算机程序产品
WO2012017641A1 (ja) アレイ管理装置、方法、集積回路およびプログラム
KR101460452B1 (ko) 하이버네이션 기반 스냅샷 이미지 생성 장치 및 방법

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