Method, electronic device and computer program product for managing a storage system

By cleaning and partitioning the persistent storage disk, the problems of storage device size and write speed in existing technologies are solved, achieving efficient data backup and recovery and simplifying the persistent storage process.

CN115220639BActive Publication Date: 2026-06-12EMC IP HLDG CO LLC

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
EMC IP HLDG CO LLC
Filing Date
2021-04-15
Publication Date
2026-06-12

Smart Images

  • Figure CN115220639B_ABST
    Figure CN115220639B_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide a method, an electronic device and a computer program product for managing a storage system. The method described herein includes cleaning a persistent storage disk in a backup mode to improve a write rate of the persistent storage disk. The method also includes creating a library partition in the cleaned persistent storage disk. The method further includes writing cache data in a volatile storage device to the library partition. With the scheme for managing a storage system of the present application, cache data in a volatile storage device can be written to a persistent storage disk at a higher write rate in a storage device having only a single persistent storage disk, thereby achieving efficient in-memory persistence.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of this disclosure relate to the field of data storage, and more specifically, to methods, electronic devices, and computer program products for managing storage systems. Background Technology

[0002] Current storage systems typically employ multiple tiers of storage media, such as main memory (also known as RAM) with faster read / write speeds and smaller storage capacities, and auxiliary memory (also known as external memory) with slower read / write speeds and larger storage capacities. Main memory is generally volatile storage devices, such as Dynamic Random Access Memory (DRAM). Auxiliary memory is generally non-volatile storage devices, such as Solid State Drives (SSDs) and Hard Disk Drives (HDDs). When the storage system loses power, data stored on volatile storage devices needs to be backed up to non-volatile storage devices in a timely manner to protect user data. This operation is commonly referred to as Permanent Memory Persistence (PMP). Summary of the Invention

[0003] In a first aspect of this disclosure, a method for managing a storage system is provided. The method includes cleaning a persistent storage disk in backup mode to improve the write rate of the persistent storage disk. The method also includes creating a library partition on the cleaned persistent storage disk. The method further includes writing cached data from a volatile storage device to the library partition.

[0004] In a second aspect of this disclosure, an electronic device is provided. The electronic device includes a processor and a memory coupled to the processor, the memory having instructions stored therein, the instructions causing the device to perform actions when executed by the processor. The actions include cleaning a persistent storage disk in a backup mode to improve the write rate of the persistent storage disk. The actions also include creating a library partition in the cleaned persistent storage disk. Furthermore, the actions include writing cached data from a volatile storage device to the library partition.

[0005] In a third aspect of this disclosure, a computer program product is provided, which is tangibly stored on a computer-readable medium and includes machine-executable instructions that, when executed, cause a machine to perform the method according to the first aspect.

[0006] In the embodiments of this disclosure, the storage management system scheme of this application enables the writing of cached data in volatile storage devices to persistent storage disks at a high write rate in storage devices with only a single persistent storage disk, thereby achieving efficient memory persistence.

[0007] The summary section is provided to present the chosen concepts in a simplified form, which will be further described in the detailed description below. The summary section is not intended to identify key or principal features of the embodiments of this disclosure, nor is it intended to limit the scope of this disclosure. Attached Figure Description

[0008] The above and other objects, features and advantages of the embodiments of the present disclosure will become more apparent from the accompanying drawings, in which like reference numerals generally denote like parts.

[0009] Figure 1 A schematic diagram of a storage system in which embodiments of the present disclosure can be implemented is shown;

[0010] Figure 2 A schematic diagram illustrating a process for backing up cached data according to some embodiments of the present disclosure is shown;

[0011] Figure 3 A schematic diagram of a first process for recovering cached data according to some embodiments of the present disclosure is shown;

[0012] Figure 4 A schematic diagram of a second process for recovering cached data according to some embodiments of the present disclosure is shown;

[0013] Figure 5 A flowchart of a management storage system according to some embodiments of the present disclosure is shown; and

[0014] Figure 6 A block diagram of an example computing device that can be used to implement embodiments of the present disclosure is shown. Detailed Implementation

[0015] The principles of embodiments of this disclosure will now be described with reference to several exemplary embodiments illustrated in the accompanying drawings. While preferred embodiments of this disclosure are shown in the drawings, it should be understood that these embodiments are described merely to enable those skilled in the art to better understand and implement the embodiments of this disclosure, and are not intended to limit the scope of this disclosure in any way.

[0016] The term "comprising" and its variations as used herein signify open inclusion, i.e., "including but not limited to". Unless otherwise stated, the term "or" means "and / or". The term "based on" means "at least partially based on". The terms "one example embodiment" and "some embodiments" mean "at least one example embodiment". The term "another embodiment" means "at least one additional embodiment". The terms "first", "second", etc., may refer to different or the same objects. Other explicit and implicit definitions may also be included below.

[0017] As mentioned above, data in volatile storage devices is lost when power is lost. Currently, several data recovery methods have been proposed for enterprise-level storage systems. Using these methods, battery-powered storage systems can recover at least a portion of the data in volatile storage devices after mains power is disconnected. However, battery-powered storage systems cannot operate for extended periods. Once the battery is depleted, the recovered data in the volatile storage device will be permanently lost. Therefore, it is necessary to promptly back up this recovered data to non-volatile storage devices, i.e., perform a Power Management Platform (PMP). In this way, even if the battery is depleted, the data will be safely stored on the non-volatile storage device.

[0018] To achieve an effective PMP (Power Management Platform), an additional persistent disk is typically included within the non-volatile storage device for dedicated backup of data from the volatile storage device. This persistent disk can be any suitable non-volatile storage device, such as an SSD or NAND flash drive. In battery-powered operation, the storage system can store the data to be backed up from the volatile storage device onto the dedicated persistent disk. When mains power is restored, the storage system can restore the data backed up on the dedicated persistent disk to the volatile main memory. However, this implementation of PMP requires an additional persistent disk within the storage device, thus increasing the size of the storage device and its overhead.

[0019] Another approach to implementing PMP was also proposed. In this scheme, instead of setting up an additional persistent storage disk on the storage device, a partition is reserved on a single persistent storage disk on the storage device for backing up data on the volatile storage device. However, since only a single persistent storage disk is set up on the storage device, and this persistent storage disk is used for normal read and write operations of user data, the write rate of this persistent storage disk remains at a low level.

[0020] It should be understood that the write rate of persistent storage disks gradually decreases with the number of write cycles. Specifically, for SSDs and NAND flash drives, the write rate drops significantly with each write cycle. For example, persistent storage disks in their factory condition have the highest write rate, while those after multiple write cycles will maintain a lower write rate. Therefore, in this implementation of PMP, due to the low write rate of persistent storage disks, battery-powered storage systems struggle to write data from volatile storage devices to persistent storage disks in a short period.

[0021] According to embodiments of this disclosure, persistent storage disks are cleaned in backup mode to improve their write speed. In this approach, a library partition is created on the cleaned persistent storage disk. In this approach, cached data from volatile storage devices is written to the library partition. In this manner, data from volatile storage devices can be written to persistent storage disks at a high write speed even on storage devices with only a single persistent storage disk, thereby achieving efficient PMP.

[0022] The following is for reference Figures 1 to 5 The present disclosure is provided to illustrate the basic principles and several exemplary embodiments. It should be understood that these exemplary embodiments are given only to enable those skilled in the art to better understand and implement the embodiments of the present disclosure, and are not intended to limit the scope of the disclosure in any way.

[0023] Figure 1 A storage system 100, in which embodiments of the present disclosure can be implemented, is shown. For example... Figure 1 As shown, the storage system 100 includes a first storage device 110, a second storage device 120, and a volatile storage device 130. The first storage device 110 can be used to store user data. The second storage device 120 can be used to back up the user data in the first storage device 110. The volatile storage device 130 can be used to store cached data 132 of the operating system or other running programs. The first storage device 110 and the second storage device 120 can be non-volatile storage devices. The first storage device 110 and the second storage device 120 can be different physical storage devices.

[0024] The first storage device 110 may include a single non-volatile persistent storage disk 112. Examples of persistent storage disk 112 include SSD disks and NAND flash drives using different interfaces. Preferably, persistent storage disk 112 is an embedded SSD disk. Persistent storage disk 112 may have multiple partitions, such as a boot partition 114. Boot partition 114 may store image data of a boot system. The boot system may be a dedicated operating system. By loading the boot system, various processes can be executed, such as purge processes, persistence (PMP) processes, etc. Persistent storage disk 112 may also include a root partition, firmware partition, etc. (hereinafter collectively referred to as other partitions 116). The root partition may store image data of the operating system of the computing device, such as image data of the Linux operating system.

[0025] Similarly, the second storage device 120 may include a non-volatile backup disk 122. Backup disk 122 can be any suitable non-volatile storage disk, such as an SSD, HDD, etc. Backup disk 122 may include multiple storage disks. Since the second storage device 120 is used to back up user data in the first storage device 110, backup disk 122 may accordingly have a backup boot partition 124. Backup boot partition 124 may store all data in boot partition 114. The second storage device 120 may also include a backup library partition 126. Backup library partition 126 may be used to store cached data to be backed up. Further details will be provided in [reference]. Figure 3 and Figure 4 Provide a detailed description.

[0026] Volatile storage device 130 can be a volatile storage device used to store cached data 132. Examples of volatile storage device 130 may include DRAM, static random access memory (SRAM), etc. Cached data 132 may include data generated during system operation, such as input / output (I / O) cached data 134. I / O cached data 134 may be cached data that needs to be backed up to a non-volatile storage device when the main power is disconnected.

[0027] It should be understood that Figure 1 The storage system 100 shown is merely exemplary and should not be construed as limiting the functionality and scope of the implementation described in this disclosure.

[0028] Figure 2A schematic diagram of backup cache data according to some embodiments of the present disclosure is shown. As described above, when the main power is disconnected, the battery-powered storage system 100 can restart and recover at least a portion of the data in the volatile storage device 130. To protect this recovered data, it is necessary to back up this data from the volatile storage device to the non-volatile storage device in a timely manner. According to the scheme for managing the storage system 100 of the present application, the storage system 100 cleans up the persistent storage disk 112 in a backup mode. In some embodiments, the backup mode may refer to a mode powered by a limited capacity of power pre-stored by the storage system 100 itself. For example, the backup mode may refer to a low-power mode powered by a battery. For example, after the battery-powered storage system 100 restarts, the recovered data may include process data for managing the storage system 100. These processes may include a monitoring process for monitoring the power mode, a cleanup process for cleaning up the persistent storage disk 112, and a PMP process for performing PMP, etc. In the case of battery power, the monitoring process can be executed and detect that the storage system 100 is in a low-power mode powered by a battery. Alternatively, the backup mode can also be a user-specified mode. For example, a user can enable the backup mode as needed. In this case, the I / O cache data 134 to be backed up can be data that the user needs to back up according to their requirements, rather than data that needs to be restored after a power outage.

[0029] In backup mode, storage system 100 cleans up persistent storage disk 112 to improve its write speed. The cleanup operation may refer to erasing user data from persistent storage disk 112 and restoring it to its factory state. For example, a cleaned persistent storage disk 112 no longer includes the initial boot partition 114 and other partitions 116. In some embodiments, persistent storage disk 112 can be cleaned up via a namespace formatting operation. In some embodiments, the cleanup operation on persistent storage disk 112 can be performed by a cleanup process. It should be understood that a cleaned persistent storage disk 112 can have a higher write speed than a persistent storage disk 112 already containing user data. Therefore, using the cleanup operation, I / O cache data 134 can be backed up from volatile storage device 130 to persistent storage disk 112 in a shorter time. For cases where storage system 100 is battery powered, this method better achieves PMP (Power Management Platform) because the battery can only support short-term backup operations.

[0030] As described above, the cleaned persistent storage disk 112 no longer includes the initial boot partition 114 and other partitions 116. Therefore, the disk space of the persistent storage disk 112 can be repartitioned. In some implementations, the storage system 100 may use a PMP process to create a library partition 216 in the persistent storage disk 112 for backing up I / O cache data 134 in the volatile storage device 130. The library partition 216 may be a partition dedicated to storing the I / O cache data 134 to be backed up. In some embodiments, a boot partition placeholder 214 may be created in the cleaned persistent storage disk 112, and the boot partition placeholder 214 may occupy different disk space than the library partition 216. The boot partition placeholder 214 may correspond to the boot partition 114 in the persistent storage disk 112 for subsequent recovery of the boot partition 114. In this way, storing I / O cache data 134 to library partition 216 will not affect the recovery of boot partition 114, and consequently will not affect the recovery of the initial partition of persistent storage disk 112.

[0031] Based on the created library partition 216, storage system 100 writes the cached data to be backed up from volatile storage device 130 to library partition 216. In some implementations, storage system 100 may utilize a PMP process to write I / O cache data 134 to the created library partition 216. Since persistent storage disk 112 is non-volatile, the I / O cache data 134 stored on persistent storage disk 112 will not be lost when the battery is depleted. In this way, efficient PMP can be achieved.

[0032] The above is for reference only. Figure 2 The process of backing up I / O cache data 134 from volatile storage device 130 to a non-volatile first storage device 110 is described below. Figure 3 and Figure 4 Describes the process of restoring I / O cache data 134 to volatile storage device 130.

[0033] Figure 3 A schematic diagram of a first process for restoring cached data according to some embodiments of the present disclosure is shown. In recovery mode, storage system 100 can restore persistent storage disk 112 based on backup data about persistent storage disk 112 in backup disk 122. Figure 3 As shown, backup disk 122 can be located in the second storage device 120, and is located on a different storage device than persistent storage disk 112. Recovery mode can refer to mains power mode powered by AC power. For example, when power is restored, storage system 100 can restart, and monitoring processes can detect that storage system 100 is in mains power mode. Additionally or alternatively, recovery mode can also be a user-specified mode. For example, a user can enable recovery mode as needed.

[0034] In recovery mode, storage system 100 can restore boot partition 114 at boot partition placeholder 214 based on backup data related to boot partition 114 in the first partition of backup disk 122. Figure 3 The backup boot partition 124 is shown. As described above, the backup boot partition 124 can store all data of the boot partition 114, including the image data of the boot system in the boot partition 114. In some embodiments, in recovery mode, the storage system 100 can utilize the Basic Input / Output System (BIOS) to restore the boot partition 114 based on the backup boot partition 124. The BIOS can restore the image data of the boot system from the backup boot partition 124 to the boot partition 114 for execution, for example, monitoring processes, PMP processes, etc.

[0035] Using the boot system in the recovered boot partition 114, the storage system 100 can restore the I / O cache data 134 from the library partition 216 to the volatile storage device 130. In some embodiments, the storage system 100 can directly store the I / O cache data 134 into the volatile storage device 130 using the boot system. In some embodiments, the storage system 100 can first store the I / O cache data 134 from the library partition 216 to a second partition of the backup disk 122. The second partition may be as follows: Figure 3 The backup library partition shown is 126.

[0036] As described above, backup library partition 126 can be used to store I / O cache data 134 in library partition 216. Since the second storage device 120 is a non-volatile storage device, the cache data 134 will not be lost even if the mains power is disconnected again. Furthermore, since the I / O cache data 134 is removed from library partition 216, the disk space occupied by library partition 216 on persistent storage disk 112 can be freed up. In other words, when I / O cache data 134 is stored in backup library partition 126, storage system 100 can repartition the freed-up disk space on persistent storage disk 112 for subsequent recovery of other partitions 116 of persistent storage disk 112.

[0037] Figure 4A schematic diagram of a second process for restoring cached data according to some embodiments of the present disclosure is shown. After the disk space occupied by library partition 126 is released, storage system 100 can restore other partitions 116 on cleaned persistent storage disk 112 based on backup data relating to other partitions 116 in the first partition of backup disk 122. The first partition of backup disk 122 may be backup boot partition 124. In addition to backup data relating to boot partition 114, backup boot partition 124 may also include backup data relating to other partitions 116. Therefore, storage system 100 can use the boot system to restore other partitions 116 on persistent storage disk 112. In this way, in recovery mode, cleaned persistent storage disk 112 can be restored to its state before cleanup for use in storing user data in normal mode.

[0038] In recovery mode, storage system 100 can also store cached data 134 from backup library partition 126 of backup disk 122 to volatile storage device 130. Storage system 100 can then use the PMP process in the boot system to restore the cached data 134 to volatile storage device 130. In this way, in recovery mode, I / O cached data 134 in volatile storage device 130 can be restored for subsequent execution.

[0039] Figure 5 A flowchart illustrating an example method 500 of a data management system according to an embodiment of the present disclosure is shown. Method 500 can be implemented, for example, in... Figure 1 This is implemented in the storage system 100 shown. It should be understood that method 500 may also include additional actions not shown and / or the actions shown may be omitted; the scope of this disclosure is not limited in this respect. The following is in conjunction with... Figure 1-4 Let's describe method 500.

[0040] At box 510, persistent storage disk 112 is cleaned in backup mode to improve the write speed of persistent storage disk 112. In some embodiments, backup mode may be a low-power mode powered by battery. In some implementations, persistent storage disk 112 may be cleaned via a namespace formatting operation.

[0041] At box 520, a library partition 216 is created in the cleaned persistent storage disk 112. In some embodiments, a boot partition placeholder 214 may be created in the cleaned persistent storage disk 112. The boot partition placeholder 214 and the library partition 216 occupy different disk spaces for subsequent recovery of the boot partition 114 of the persistent storage disk 112.

[0042] At box 530, cached data from volatile storage device 130 is written to library partition 216. In some embodiments, the cached data may include I / O cached data. Storage system 100 may store I / O cached data 134 to be backed up from volatile storage device 130 to library partition 216.

[0043] In some embodiments, in recovery mode, storage system 100 can also restore boot partition 114 at boot partition placeholder 214 based on backup data related to boot partition 114 in the first partition of backup disk 112. The first partition of backup disk 112 may be backup boot partition 124. Backup disk 122 and persistent storage disk 112 are located on different storage devices. In some embodiments, recovery mode may be mains power mode powered by AC power.

[0044] In some embodiments, storage system 100 may use the boot system in the recovered boot partition 114 to restore I / O cache data 134 from library partition 216 to volatile storage device 130. In some embodiments, storage system 100 may store I / O cache data 134 from library partition 216 to a second partition of backup disk 122, such as backup library partition 126. Storage system 100 may also store I / O cache data 134 from the second partition of backup disk 122 to volatile storage device 130.

[0045] In some embodiments, the storage system 100 may also restore other partitions 116 on the cleaned persistent storage disk 112 based on backup data in the first partition of the backup disk 122 relating to other partitions 116 on the persistent storage disk 112 other than the boot partition 114.

[0046] Using the method 500 described above, the storage system 100 can write data from the volatile storage device 130 to the persistent storage disk 112 at a high write rate from the storage device 110, which has only a single persistent storage disk 112, thereby achieving efficient PMP. Furthermore, the storage system 100 can restore the persistent storage disk to its normal operating state in recovery mode for storing user data.

[0047] Figure 6 A schematic block diagram of an example device 600 that can be used to implement embodiments of the present disclosure is shown. For example, device 600 can be used in, for example... Figure 1 The storage system shown is implemented in 100 locations. For example... Figure 6As shown, device 600 includes a central processing unit (CPU) 601, which can perform various appropriate actions and processes according to computer program instructions stored in read-only memory (ROM) 602 or loaded from storage unit 608 into random access memory (RAM) 603. RAM 603 may also store various programs and data required for the operation of device 600. CPU 601, ROM 602, and RAM 603 are interconnected via bus 604. Input / output (I / O) interface 605 is also connected to bus 604.

[0048] Multiple components in device 600 are connected to I / O interface 605, including: input unit 606, such as keyboard, mouse, etc.; output unit 607, such as various types of monitors, speakers, etc.; storage unit 608, such as disk, optical disk, etc.; and communication unit 609, such as network card, modem, wireless transceiver, etc. Communication unit 609 allows device 600 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.

[0049] The various processes and handling described above, such as method 200, can be executed by processing unit 601. For example, in some embodiments, method 200 can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on device 600 via ROM 602 and / or communication unit 609. When the computer program is loaded into RAM 603 and executed by CPU 601, one or more actions of method 200 described above can be performed.

[0050] This disclosure can be a method, apparatus, system, and / or computer program product. A computer program product may include a computer-readable storage medium having computer-readable program instructions loaded thereon for performing various aspects of this disclosure.

[0051] Computer-readable storage media can be tangible devices capable of holding and storing instructions for use by an instruction execution device. Computer-readable storage media can be, for example—but not limited to—electrical storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of computer-readable storage media include: portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), SRAM, portable compact disc read-only memory (CD-ROM), digital multifunction disc (DVD), memory sticks, floppy disks, mechanical encoding devices, such as punch cards or recessed protrusions storing instructions thereon, and any suitable combination of the foregoing. The computer-readable storage media used herein are not to be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., light pulses through fiber optic cables), or electrical signals transmitted through wires.

[0052] The computer-readable program instructions described herein can be downloaded from computer-readable storage media to various computing / processing devices, or downloaded via a network, such as the Internet, local area network, wide area network, and / or wireless network, to an external computer or external storage device. The network may include copper transmission cables, fiber optic transmission, wireless transmission, routers, firewalls, switches, gateway computers, and / or edge servers. A network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards them to the computer-readable storage media in the respective computing / processing device.

[0053] Computer program instructions used to perform the operations of this disclosure may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, status setting data, or source code or object code written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, etc., and conventional procedural programming languages ​​such as the "C" language or similar programming languages. The computer-readable program instructions may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or may be connected to an external computer (e.g., via the Internet using an Internet service provider). In some embodiments, electronic circuitry, such as programmable logic circuitry, field-programmable gate arrays (FPGAs), or programmable logic arrays (PLAs), is personalized by utilizing the status information of the computer-readable program instructions to implement various aspects of this disclosure.

[0054] Various aspects of this disclosure are described herein with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer-readable program instructions.

[0055] These computer-readable program instructions can be provided to a processing unit of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that, when executed by the processing unit of the computer or other programmable data processing apparatus, they create means for implementing the functions / actions specified in one or more blocks of the flowchart and / or block diagram. These computer-readable program instructions can also be stored in a computer-readable storage medium that causes a computer, programmable data processing apparatus, and / or other device to operate in a particular manner. Thus, the computer-readable medium storing the instructions comprises an article of manufacture that includes instructions for implementing aspects of the functions / actions specified in one or more blocks of the flowchart and / or block diagram.

[0056] Computer-readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other device to cause a series of operational steps to be performed on the computer, other programmable data processing apparatus, or other device to produce a computer-implemented process, thereby causing the instructions executed on the computer, other programmable data processing apparatus, or other device to perform the functions / actions specified in one or more boxes of a flowchart and / or block diagram.

[0057] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of the present disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of an instruction containing one or more executable instructions for implementing a specified logical function. In some alternative implementations, the functions marked in the blocks may occur in a different order than those shown in the drawings. For example, two consecutive blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, may be implemented using a dedicated hardware-based system that performs the specified function or action, or using a combination of dedicated hardware and computer instructions.

[0058] The various embodiments of this disclosure have been described above. These descriptions are exemplary and not exhaustive, nor are they limited to the disclosed embodiments. Many modifications and variations will be apparent to those skilled in the art without departing from the scope and spirit of the described embodiments. The terminology used herein is chosen to best explain the principles, practical application, or improvement of the technology in the market, or to enable others skilled in the art to understand the embodiments disclosed herein.

Claims

1. A method for managing a storage system, comprising: In backup mode, clean up the persistent storage disk to improve the write speed of the persistent storage disk, wherein the cleanup includes erasing user data on the persistent storage disk and restoring the persistent storage disk to its factory state; Create a library partition on the cleaned persistent storage disk; Write the cached data from the volatile storage device to the library partition; as well as In recovery mode, the persistent storage disk is restored based on backup data about the persistent storage disk in the backup disk, wherein the backup disk and the persistent storage disk are located on different storage devices.

2. The method according to claim 1, wherein creating the library partition comprises: A boot partition placeholder is created in the cleaned persistent storage disk. The boot partition placeholder and the library partition occupy different disk space for the recovery of the boot partition of the persistent storage disk.

3. The method of claim 2, wherein restoring the persistent storage disk in recovery mode based on backup data about the persistent storage disk in the backup disk comprises: In the recovery mode, the boot partition is restored at the boot partition placeholder based on the backup data related to the boot partition in the first partition of the backup disk; Using the boot system in the recovered boot partition, the cached data is restored from the library partition to the volatile storage device; as well as Based on the backup data in the first partition of the backup disk related to other partitions in the persistent storage disk other than the boot partition, the other partitions are restored in the cleaned persistent storage disk.

4. The method of claim 3, wherein restoring the cached data from the library partition to the volatile storage device comprises: The cached data is stored from the library partition to the second partition of the backup disk; as well as The cached data is stored from the second partition of the backup disk to the volatile storage device.

5. The method of claim 1, wherein the backup mode is a low-power mode powered by a battery.

6. The method according to claim 3, wherein the recovery mode is a mains power supply mode powered by mains power.

7. The method according to claim 1, wherein the cached data includes I / O cached data.

8. An electronic device, comprising: processor; as well as A memory coupled to the processor, the memory having instructions stored therein, the instructions causing the device to perform actions when executed by the processor, the actions including: In backup mode, clean up the persistent storage disk to improve the write speed of the persistent storage disk, wherein the cleanup includes erasing user data on the persistent storage disk and restoring the persistent storage disk to its factory state; Create a library partition on the cleaned persistent storage disk; Write cached data from the volatile storage device to the library partition; and In recovery mode, the persistent storage disk is restored based on backup data about the persistent storage disk in the backup disk, wherein the backup disk and the persistent storage disk are located on different storage devices.

9. The device according to claim 8, wherein creating the library partition comprises: A boot partition placeholder is created in the cleaned persistent storage disk. The boot partition placeholder and the library partition occupy different disk space for the recovery of the boot partition of the persistent storage disk.

10. The device of claim 9, wherein restoring the persistent storage disk in recovery mode based on backup data about the persistent storage disk in the backup disk comprises: In the recovery mode, the boot partition is restored at the boot partition placeholder based on the backup data related to the boot partition in the first partition of the backup disk; Using the boot system in the recovered boot partition, the cached data is restored from the library partition to the volatile storage device; as well as Based on the backup data in the first partition of the backup disk related to other partitions in the persistent storage disk other than the boot partition, the other partitions are restored in the cleaned persistent storage disk.

11. The apparatus of claim 10, wherein restoring the cached data from the library partition to the volatile storage device comprises: The cached data is stored from the library partition to the second partition of the backup disk; as well as The cached data is stored from the second partition of the backup disk to the volatile storage device.

12. The device of claim 8, wherein the backup mode is a low-power mode powered by a battery.

13. The device according to claim 10, wherein the recovery mode is a mains power supply mode powered by mains electricity.

14. The device of claim 8, wherein the cached data includes I / O cached data.

15. A computer program product tangibly stored on a computer-readable medium and comprising machine-executable instructions that, when executed, cause a machine to perform the method according to any one of claims 1 to 7.