CN112540728B - Power-saving storage method, device, equipment and storage medium - Google Patents
Power-saving storage method, device, equipment and storage medium Download PDFInfo
- Publication number
- CN112540728B CN112540728B CN202011416780.XA CN202011416780A CN112540728B CN 112540728 B CN112540728 B CN 112540728B CN 202011416780 A CN202011416780 A CN 202011416780A CN 112540728 B CN112540728 B CN 112540728B
- Authority
- CN
- China
- Prior art keywords
- power
- disks
- disk
- saving group
- group
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
Abstract
The application provides a power-saving storage method, a device, equipment and a storage medium, which are used for determining a power-saving group needing to be read and written according to a read-write instruction, wherein the power-saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks respectively. Further, calculating a first number of online disks before the power-saving group is awakened, predicting a second number of online disks after the power-saving group is awakened, performing awakening processing on the power-saving group when the first number is smaller than the second number, and performing read-write operation on the power-saving group when the power-saving group is awakened. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
Description
Technical Field
The present application relates to the field of computer technologies, and in particular, to a power saving storage method, apparatus, device, and storage medium.
Background
With the development of information technology, people generate a large amount of data in work and life, and the large amount of data is generally stored in a storage system, such as a system consisting of a plurality of disks.
Redundant Array of Independent Disks (RAID) can store the same data in different places on multiple Disks. And with the continuous development of technology, the versions of RAID technology are also continuously updated. For example, Redundant Array of Independent Disks 2.0 (RAID 2.0) is a higher Version of RAID technology. The basic idea of RAID2.0 is to divide a large-capacity mechanical disk into a plurality of chunks (Chunk) according to a fixed capacity, where different chunks on each disk may form a Chunk group of a different RAID type with chunks on other disks, so that a Chunk on one disk may belong to a plurality of Chunk groups of a plurality of RAID types. In addition, the storage system based on the RAID2.0 technology can perform data reconstruction or data reconstruction through another disk after a failure occurs in one disk.
However, since the RAID2.0 technology does not have the power saving function, in the case where a storage system based on the RAID2.0 technology includes a large number of disks, power consumption of the disks is large and the life of the disks is affected.
Disclosure of Invention
The embodiment of the application provides a power-saving storage method, a device, equipment and a storage medium, which are used for solving the problems in the related technology, and the technical scheme is as follows:
in a first aspect, an embodiment of the present application provides a power saving storage method, including:
determining a power saving group needing reading and writing according to the reading and writing instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different magnetic disks respectively;
calculating a first number of online disks before the power-saving group is awakened, and predicting a second number of online disks after the power-saving group is awakened;
when the first number is smaller than the second number, performing awakening processing on the power-saving group;
and under the condition that the power-saving group is awakened, performing read-write operation on the power-saving group.
In one embodiment, calculating the first number of online disks before the power-saving group is woken up includes:
calculating the total number of existing disk control objects before the power-saving group is awakened, wherein each disk control object is used for describing an online disk;
the total number is determined as a first number of online disks before the power-save group is woken up.
In one embodiment, predicting the second number of online disks after the power save group has been awakened comprises:
predicting the number of disks needing to be started after the power-saving group is awakened;
and predicting a second number of online disks after the power-saving group is awakened according to the first number and the number of disks needing to be started after the power-saving group is awakened.
In one embodiment, predicting the number of disks that need to be started after the power-save group is woken up includes:
determining the number of started disks in a plurality of disks corresponding to the power saving group;
and predicting the number of the disks needing to be started after the power-saving group is awakened according to the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks.
In one embodiment, determining the number of started disks in the plurality of disks corresponding to the power-saving group comprises:
determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object;
and determining the number of the disks corresponding to the disk control object in the plurality of disks corresponding to the power saving group as the number of the started disks in the plurality of disks corresponding to the power saving group.
In one embodiment, predicting the number of disks that need to be started after the power-saving group is woken up according to the number of the disks corresponding to the power-saving group and the number of disks already started in the disks, includes:
and determining the difference value between the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks as the number of the disks needing to be started after the power-saving group is awakened.
In one embodiment, predicting a second number of online disks after the power-saving group is woken up based on the first number and the number of disks that need to be started up after the power-saving group is woken up includes:
determining a sum of the first number and the number of disks that need to be started after the power-saving group is woken up as a second number of online disks after the power-saving group is woken up.
In one embodiment, in the case that the first number is smaller than the second number, performing a wake-up process on the power saving group includes:
and when the first number is smaller than the second number and the second number is smaller than or equal to a first preset value, performing awakening processing on the power-saving group.
In one embodiment, the waking up the power saving group includes:
determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object;
under the condition that the disk control object corresponding to any disk in the multiple disks does not exist, creating the disk control object corresponding to any disk, and setting the reference count corresponding to any disk as a second preset value;
and performing wake-up processing on any disk.
In one embodiment, the method further comprises:
and under the condition that the disk control object corresponding to any disk in the multiple disks exists, increasing a reference count corresponding to the any disk by a third preset value, wherein the reference count corresponding to the any disk is the number of the node groups sharing the any disk.
In one embodiment, after performing the read/write operation on the power saving group, the method further includes:
and closing the power saving group.
In one embodiment, the shutdown processing for the power saving group includes:
reducing the reference count corresponding to each disk in the plurality of disks corresponding to the power saving group by a third preset value to obtain an updated reference count corresponding to each disk in the plurality of disks;
and when the updated reference count corresponding to any one of the plurality of disks is 0, performing power-off processing on the any one disk, and deleting the disk control object corresponding to the any one disk.
In one embodiment, the plurality of disks corresponding to the power-save group is different from the plurality of disks corresponding to the adjacent power-save groups of the power-save group by one disk.
In a second aspect, an embodiment of the present application provides a power saving storage apparatus, including:
the determining module is used for determining a power saving group needing to be read and written according to the reading and writing instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks respectively;
the computing module is used for computing the first number of the online disks before the power saving group is awakened;
a prediction module to predict a second number of online disks after the power-saving group is awakened;
the awakening processing module is used for awakening the power saving group under the condition that the first number is smaller than the second number;
and the read-write operation module is used for performing read-write operation on the power saving group under the condition that the power saving group is awakened.
In one embodiment, the calculation module is specifically configured to: calculating the total number of existing disk control objects before the power-saving group is awakened, wherein each disk control object is used for describing an online disk; the total number is determined as a first number of online disks before the power-save group is woken up.
In one embodiment, the prediction module is specifically configured to: predicting the number of disks needing to be started after the power-saving group is awakened; and predicting a second number of online disks after the power-saving group is awakened according to the first number and the number of disks needing to be started after the power-saving group is awakened.
In one embodiment, the prediction module comprises a determination unit for: determining the number of started disks in a plurality of disks corresponding to the power saving group; and predicting the number of the disks needing to be started after the power-saving group is awakened according to the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks.
In one embodiment, the determining unit is specifically configured to: determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object; and determining the number of the disks corresponding to the disk control object in the plurality of disks corresponding to the power saving group as the number of the started disks in the plurality of disks corresponding to the power saving group.
In one embodiment, the determining unit is specifically configured to: and determining the difference value between the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks as the number of the disks needing to be started after the power-saving group is awakened.
In one embodiment, the determining unit is specifically configured to: determining a sum of the first number and the number of disks that need to be started after the power-saving group is woken up as a second number of online disks after the power-saving group is woken up.
In one embodiment, the wake-up processing module is specifically configured to: and when the first number is smaller than the second number and the second number is smaller than or equal to a first preset value, performing awakening processing on the power-saving group.
In one embodiment, the wake-up processing module is specifically configured to: determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object; under the condition that the disk control object corresponding to any disk in the multiple disks does not exist, creating the disk control object corresponding to any disk, and setting the reference count corresponding to any disk as a second preset value; and performing wake-up processing on any disk.
In one embodiment, the apparatus further comprises: and the reference count control module is used for increasing the reference count corresponding to any disk by a third preset value under the condition that a disk control object corresponding to any disk in the multiple disks exists, wherein the reference count corresponding to any disk is the number of the node groups sharing any disk.
In one embodiment, the apparatus further comprises: and a shutdown processing module, configured to perform shutdown processing on the power saving group after the read/write operation module 156 performs read/write operation on the power saving group.
In one embodiment, the shutdown processing module is specifically configured to: reducing the reference count corresponding to each disk in the plurality of disks corresponding to the power saving group by a third preset value to obtain an updated reference count corresponding to each disk in the plurality of disks; and when the updated reference count corresponding to any one of the plurality of disks is 0, performing power-off processing on the any one disk, and deleting the disk control object corresponding to the any one disk.
In one embodiment, the plurality of disks corresponding to the power-save group is different from the plurality of disks corresponding to the adjacent power-save groups of the power-save group by one disk.
In a third aspect, an embodiment of the present application provides a power saving storage device, where the device includes: a memory and a processor. Wherein the memory and the processor are in communication with each other via an internal connection path, the memory is configured to store instructions, the processor is configured to execute the instructions stored by the memory, and the processor is configured to perform the method of any of the above aspects when the processor executes the instructions stored by the memory.
In a fourth aspect, embodiments of the present application provide a computer-readable storage medium, which stores a computer program, and when the computer program runs on a computer, the method in any one of the above-mentioned aspects is executed.
The advantages or beneficial effects in the above technical solution at least include: and determining a power saving group needing reading and writing according to the reading and writing instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks respectively. Further, calculating a first number of online disks before the power-saving group is awakened, predicting a second number of online disks after the power-saving group is awakened, performing awakening processing on the power-saving group when the first number is smaller than the second number, and performing read-write operation on the power-saving group when the power-saving group is awakened. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
The foregoing summary is provided for the purpose of description only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features of the present application will be readily apparent by reference to the drawings and following detailed description.
Drawings
In the drawings, like reference numerals refer to the same or similar parts or elements throughout the several views unless otherwise specified. The figures are not necessarily to scale. It is appreciated that these drawings depict only some embodiments in accordance with the disclosure and are therefore not to be considered limiting of its scope.
Fig. 1 is a schematic view of a disk cabinet according to an embodiment of the present application;
FIG. 2 is a schematic diagram illustrating the division of power saving groups according to an embodiment of the present application;
FIG. 3 is a schematic diagram illustrating the division of power saving groups according to another embodiment of the present application;
FIG. 4 is a flowchart of a power saving storage method according to an embodiment of the present application;
FIG. 5 is a schematic structural diagram of a power-saving storage device according to an embodiment of the present application;
FIG. 6 is a flow chart of a power saving storage method according to another embodiment of the present application;
FIG. 7 is a flow chart of a power saving storage method according to another embodiment of the present application;
FIG. 8 is a flowchart illustrating an embodiment of the present invention for predicting the number of online disks after a power saving group is woken up;
FIG. 9 is a flowchart illustrating reading and writing to a power saving group according to an embodiment of the present application;
FIG. 10 is a flow chart of a power saving storage method according to another embodiment of the present application;
FIG. 11 is a flow chart of a power saving storage method according to another embodiment of the present application;
FIG. 12 is a flowchart illustrating waking up a power saving group according to an embodiment of the present application;
FIG. 13 is a flow chart of a power saving storage method according to another embodiment of the present application;
FIG. 14 is a flowchart of closing an online power saving group according to an embodiment of the present application;
FIG. 15 is a schematic structural diagram of a power-saving storage device according to another embodiment of the present application;
fig. 16 is a schematic structural diagram of a power-saving storage device according to an embodiment of the present application.
Detailed Description
In the following, only certain exemplary embodiments are briefly described. As those skilled in the art will recognize, the described embodiments may be modified in various different ways, all without departing from the spirit or scope of the present application. Accordingly, the drawings and description are to be regarded as illustrative in nature, and not as restrictive.
Large-scale inactive array of Disks (MAID) technology was developed and developed based on the tape library mode of operation. The MAID is defined by the global network Storage Industry Association (SNIA): a storage system containing a series of disk drives is shut down individually or in groups when not needed. The MAID storage system may reduce the power consumed by the storage array.
The tape library works on the principle that all tapes are normally placed in slots of the tape library, and when a certain reel of tape is needed, the tape is placed in a tape drive and data is read and written. Most of the time, however, the tape is inactive. The MAID applies the same principle, such as powering on a portion of disks when needed, while other disks are typically powered off, like tapes in a tape library. Therefore, a disk storage to which the MAID technology is applied may also be referred to as a disk library.
The MAID greatly meets the characteristics of green, environmental protection and energy conservation required by the current popular 'green storage'. For example, all disks in the storage device are not always in Active and Power-ON states, but most of the hard disks are in Power-OFF states, and when the system needs to perform read-write access to some hard disks, some hard disks are powered ON again. Serial ATA (SATA) hard disks in MAID storage start up time is about 10 seconds. After a certain idle time (the length of the time period can be preset according to the access characteristics and frequency of the system), the hard disk in the power-on state is powered off again according to a strategy, so that the hard disk is changed into the power-off state, and the functions of saving electricity, protecting the environment and prolonging the service life of the hard disk are achieved.
The technology supporting automatic speed reduction (spin down) of the hard disk is similar to the MAID technology, and is a technology for controlling the power consumption of a disk. The difference is that the technology of supporting the automatic deceleration of the rotating speed of the hard disk does not stop the power supply to the disk, but turns off the motor of the disk, thereby playing the role of saving power. In addition, supporting the disk spin-down technique allows the disk to be switched (woken up) faster between power-up and power-down than the MAID technique.
In actual engineering practice, data organization often needs to add a layer on a disk, for example, a scheduling unit is added, and one scheduling unit can represent a complete readable and writable unit. In addition, one scheduling unit may include one or more disks, and during the actual scheduling process, one or more disks in one scheduling unit may be woken up or hibernated at the same time. In the process of dividing the Disks by taking the scheduling units as the granularity, the mainstream techniques include two types, one type is scheduling by taking the Disks as a unit, and the other type is scheduling by taking a Redundant Array of Independent Disks (RAID), a copy, or an erasure as a unit. RAID, duplication, and erasure correction are different ways for organizing disks or hard disks, respectively. Specifically, the method of scheduling in units of disks is referred to as a "disk scheduling method", and the method of scheduling in units of RAID is referred to as a "RAID scheduling method". The advantages of the disk scheduling method are as follows: the scheduling granularity is small, the disk is subjected to small fluctuation in the process of switching the scheduling unit, and the switching time is short. The disadvantages of the disk scheduling method are: and the single-disk throughput is low due to the lack of a redundancy algorithm. The advantages of the RAID scheduling method are as follows: higher performance and higher redundancy can be provided. However, the disadvantage of the RAID scheduling method is large scheduling granularity and long switching time.
Redundant Array of Independent Disks (RAID) is a method of storing the same data in different places on a plurality of hard Disks. Thus, RAID is a method of redundantly storing data. RAID technology improves system performance by placing data on multiple hard disks so that input and output operations can overlap in a balanced manner, while increasing Mean Time Between Failures (MTBF). In most storage systems, RAID uses physical hard disks as a unit.
However, for the conventional RAID system, in the case of a disk damage, there is no reliability guarantee for data in a disk reconstruction or reconstruction (Rebuild) process. For example, in the case where reconstruction or rebuild has not been completed, data is lost and is not recoverable if a bad disk occurs. Therefore, for a storage system, the most important sign of reliability is that the smaller the RAID reconstruction or reconstruction time is, the better, so that the probability of bad disk again before the reconstruction or reconstruction is completed can be reduced. Early storage systems mostly used Fibre Channel (FC) disks, which only had capacities of tens of Gigabytes (GB), which can be abbreviated as G. Therefore, the reconstruction time is short, and the probability of a bad disk again in reconstruction is low. However, with the rapid increase of the hard disk capacity, the read-write speed of the hard disk slowly increases under the influence of various factors such as the rotating speed of the magnetic disk, and the like, and the requirement of the system on the reconstruction time cannot be met. For example, taking a 2 Terabyte (TB) disk and a 7.2 Kilo-revolution Per minute (Krpm) disk as an example, the average writing speed during reconstruction is about 30 mega-Per-second (M/s), and the reconstruction time is as long as 18 hours. Therefore, the probability of a new bad disc occurring during reconstruction is greatly increased, and the risk of data loss is also greatly increased. Therefore, the conventional RAID technology has not been able to meet the requirement of using a large-capacity hard disk in the system. However, with the development of technology, versions of RAID technology are constantly being updated. For example, Redundant Array of Independent Disks 2.0 (RAID 2.0) technology and RAID2.0+ technology are higher versions of RAID technology, and these higher versions of technology not only integrate functions of data protection and data distribution across Disks, but also sufficiently meet application requirements for storage in a virtual machine environment.
Specifically, the RAID2.0 technology is an enhanced RAID technology, and effectively solves the problems of an increasing capacity of a mechanical hard disk, an increasing time required to reconstruct one mechanical hard disk, and a risk of data loss due to a failure of one hard disk during reconstruction due to an increasing reconstruction window. The basic idea of RAID2.0 technology is to first cut a large-capacity mechanical hard disk into a plurality of smaller chunks (Chunk) according to a fixed capacity, for example, the size of a Chunk is usually 64 MB. RAID groups are built on these small blocks, rather than on some hard disks, and multiple small blocks may constitute a Chunk Group. At this time, the hard disks do not form the traditional RAID relationship, but form a larger number of hard disk groups (usually containing 96 disks), and different blocks on each hard disk may form a block group of a different RAID type with blocks on other hard disks in the hard disk group, so that a block on one hard disk may belong to multiple block groups of multiple RAID types. Therefore, the storage system based on the RAID2.0 technology can reconstruct all hard disks on the hard disk group concurrently under the condition that one hard disk fails, and does not reconstruct on a single hot spare disk of the traditional RAID, so that the reconstruction time is greatly reduced, and the risk of data loss caused by the expansion of a reconstruction window is reduced. And the performance and reliability of the storage system can be ensured while the capacity of the hard disk is greatly increased.
Since RAID2.0 technology does not change the traditional algorithms for various RAID types, the RAID range is narrowed to groups of split blocks. Therefore, the RAID2.0 technology has the following technical features:
1) several, tens or even hundreds of mechanical hard disks constitute a hard disk pack.
2) The hard disks in the hard disk Group are divided into several tens of megabytes and several hundreds of megabytes, and the chunks on different hard disks may constitute a Chunk Group (Chunk Group).
3) The RAID2.0 technique involves computation within a Chunk Group (Chunk Group) and the system no longer has a hot spare disk but is replaced by a hot spare block that remains within the same Chunk Group.
However, since the RAID2.0 technology does not have the power saving function, in the case where a storage system based on the RAID2.0 technology includes a large number of disks, power consumption of the disks is large and the life of the disks is affected. In order to solve the problem, an embodiment of the present application provides a power saving storage method. Specifically, the power-saving storage method can divide a plurality of disks in the storage system into a plurality of power-saving groups. The following sets forth specific illustrations for example.
FIG. 1 is a schematic diagram of a plurality of disks in a storage system. The storage system may be referred to as a disk cabinet. In addition, each disk may include a plurality of partitions, and each partition may include a plurality of stripes. It will be appreciated that the number of partitions included per disk, and the number of sticks included per partition, may be adjusted according to the particular hardware conditions. For example, taking an example that each disk includes 4 partitions, each partition includes n pieces, the disk cabinet includes 8 disks. The number of the disks in the disk cabinet is larger than the number of the partitions in one disk. In addition, the concept of the bar is the same as that of the chunking (chunk) in the above description.
In the embodiment of the present application, a plurality of disks shown in fig. 1 may be divided into a plurality of power saving groups, and fig. 2 is a schematic diagram of a plurality of disks divided into a plurality of power saving groups. For example, partition 1 of disk 1, partition 2 of disk 2, partition 3 of disk 3, and partition 4 of disk 4 may constitute power saving group 1. Partition 1 of disk 2, partition 2 of disk 3, partition 3 of disk 4, partition 4 of disk 5 may constitute power-saving group 2, and so on. That is, the number of the power saving groups is the same as the number of the disks in the disk cabinet, the identifier of each power saving group, such as the serial number, is the same as the serial number of the first disk in the power saving group, the number of the disks related to each power saving group is the same as the number of the partitions in each disk, and the number of the partitions included in each power saving group is the same as the number of the partitions in each disk. Therefore, no matter the number of the disks in the disk cabinet, the method for dividing the disks in the disk cabinet into the plurality of power saving groups can be adopted.
In addition, in order to facilitate understanding of the relationship between two adjacent power saving groups, the present embodiment may change the positions of the partitions in each disk in the figure on the basis of fig. 2, and the physical structure inside the disk may not be changed, thereby obtaining a plurality of power saving groups as shown in fig. 3. That is, the plurality of power-saving groups shown in fig. 3 and the plurality of power-saving groups shown in fig. 2 are the same, except that the positions of the plurality of partitions in each disk are adjusted in the figure.
Optionally, the plurality of disks corresponding to the power saving group are different from the plurality of disks corresponding to the adjacent power saving group of the power saving group by one disk. For example, power saving group 1 and power saving group 2 in fig. 3 are two adjacent power saving groups. The disks related to the power saving group 1 are respectively a disk 1, a disk 2, a disk 3 and a disk 4, the disks related to the power saving group 2 are respectively a disk 2, a disk 3, a disk 4 and a disk 5, namely, the disks related to the power saving group 1 and the disks related to the power saving group 2 are different from each other. That is, there are duplicate disks between two adjacent power-saving groups.
In addition, in this embodiment, the stripe blocks with the same internal sequence number in each power saving group may constitute a logically generalized RAID, for example, a stripe without parity (RAID 0), a redundant array of independent disks (RAID 1), a distributed parity independent disk configuration (RAID 5), a disk configuration with two types of stored parity codes (RAID 6), erasure correction, and the like. That is to say, the unit formed by the bars with the same internal serial number in each power saving group is a unit for reading and writing data, and the bars with the same internal serial number in the same power saving group belong to different partitions of different disks.
It should be understood that the dividing method of the power saving group described in this embodiment is only an illustrative example, and is not limited to this specific example, for example, in other embodiments, other dividing methods may also be used.
The following describes a power saving storage method provided in the embodiments of the present application in detail with reference to specific embodiments.
FIG. 4 shows a flow diagram of a power saving storage method according to an embodiment of the present application.
Specifically, the power-saving storage method described in this embodiment can be applied to the power-saving storage device shown in fig. 5. The power-saving storage device includes: the system comprises a redundancy algorithm module, a logic disk module, a physical disk module and a power supply control module. The power control module may include an online power saving group and a disk control object. The disk control object may include a reference count. Each module in the power saving storage device will be described separately below.
And the redundancy algorithm module is used for realizing a redundancy algorithm, such as a redundancy algorithm in RAID 0, RAID 1, RAID 5, RAID 6 and erasure correction. The implementation is done on top of the block device of the logical disk delivery.
The logical disk modules, i.e., the hierarchy or hierarchy represented by the partitions and the chunks shown in fig. 1, are used to implement the function of reading and writing the partition area on top of the physical disk modules.
The physical disk module may be the disk cabinet as described above, and the physical disk module corresponds to an actual physical disk and provides upward disk reading and writing.
The power control module is a core module in the power-saving storage device and is used for realizing semantic translation from power control of the power-saving group to power control of the disk, integrally managing the online state of the power-saving group and integrally managing the online state of the disk.
The online power saving group represents a power saving group that has been awakened, i.e., a power saving group in a power-on state. Because each power saving group relates to a plurality of disks, when a plurality of disks related to a certain power saving group are all in a power-on state, it can be determined that the power saving group is in the power-on state, that is, the power saving group is an online power saving group. In the case where at least one disk of the plurality of disks involved in a power saving group is in a power down state, it can be determined that the power saving group is in the power down state.
A disk control object may correspond to a physical disk, which may be a disk as shown in fig. 2 or fig. 3. For example, disk control object 1 corresponds to disk 1, disk control object 2 corresponds to disk 2, and so on. However, in this embodiment, when the physical disk is in the power-on state, the disk control object corresponding to the physical disk may appear in the power control module, and the disk control object corresponding to the physical disk in the power-off state does not appear in the power control module. In addition, the physical disk in the powered-on state may be recorded as an online physical disk or an online disk, and one disk control object may be description of the online physical disk in the power control module, and the disk control object may record a situation that the online physical disk is used by the power saving group. In addition, the disk control object can also be a connection interface between the power control module and the physical disk module, and the disk control object can provide a method for controlling the disk for the power control module.
The reference count in the disk control object is used to record how many power-saving groups the online physical disk described by the disk control object is shared by, that is, the reference count can describe a variable of how many power-saving groups an online physical disk is shared by.
For example, taking the power saving group 1 and the power saving group 2 shown in fig. 2 or fig. 3 as an example of being online, since the disks related to the power saving group 1 are the disk 1, the disk 2, the disk 3, and the disk 4, respectively, and the disks related to the power saving group 2 are the disk 2, the disk 3, the disk 4, and the disk 5, respectively, the disk 1, the disk 2, the disk 3, the disk 4, and the disk 5 are online physical disks, respectively. The power control module shown in fig. 5 includes an online power saving group 1, an online power saving group 2, a disk control object 1, a disk control object 2, a disk control object 3, a disk control object 4, and a disk control object 5.
In the embodiment of the present application, the power saving storage apparatus shown in fig. 5 can receive a read/write command from a user. The read-write instruction may be understood as at least one of a read instruction and a write instruction.
As shown in fig. 4, the method may include the following steps:
s401, determining a power saving group needing to be read and written according to the read-write command, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks.
Specifically, the power saving storage device may determine the power saving group to be read and written, that is, the power saving group corresponding to the read and write instruction, according to the read and write instruction. For example, the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to a different disk respectively. In addition, the power saving group corresponding to the read-write command may be in a power-on state or a power-off state. And under the condition that the power saving group corresponding to the read-write instruction is in a power-on state, the power saving group does not need to be awakened. And when the power saving group corresponding to the read-write command is in a power-off state, waking up the power saving group.
S402, calculating a first number of online disks before the power-saving group is awakened, and predicting a second number of online disks after the power-saving group is awakened.
Further, the power-saving storage device may calculate a first number of online disks of the power-saving group corresponding to the read-write instruction before being awakened, that is, the first number of the online disks currently existing under the condition that the power-saving storage device receives the read-write instruction. Further, the power-saving storage device may also predict a second number of online disks after the power-saving group is woken up, i.e., the power-saving storage device may calculate the second number of online disks after the power-saving group is assumed to be woken up.
And S403, when the first number is smaller than the second number, performing awakening processing on the power saving group.
Specifically, when the first number is equal to the second number, the number of online disks does not change before and after the power saving group corresponding to the read/write instruction is awakened, that is, the plurality of disks related to the power saving group are all in a powered-on state. Therefore, the power saving group corresponding to the read-write instruction is already in the power-on state, and in this case, the power saving group corresponding to the read-write instruction does not need to be awakened.
When the first number is smaller than the second number, it indicates that the number of online disks is increased after the power saving group corresponding to the read/write instruction is awakened, that is, part of the disks in the power saving group may be in a power-down state. Therefore, the power saving group corresponding to the read/write command is in a power-off state, and in this case, the power saving group corresponding to the read/write command needs to be woken up. And further, performing awakening processing on the power saving group corresponding to the read-write instruction.
S404, when the power-saving group is awakened, reading and writing operations are carried out on the power-saving group.
For example, when the power saving group corresponding to the read/write command is woken up, the power saving storage device may further perform read/write operations on the power saving group.
According to the reading and writing instruction, the power saving group needing to be read and written is determined, the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks. Further, calculating a first number of online disks before the power-saving group is awakened, predicting a second number of online disks after the power-saving group is awakened, performing awakening processing on the power-saving group when the first number is smaller than the second number, and performing read-write operation on the power-saving group when the power-saving group is awakened. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
In addition, the present embodiment can make the disk switching time trend to the single disk switching time by the power saving storage device as shown in fig. 5, so that high-speed performance and safer redundancy can be provided. In addition, under the condition that the writing mode or the reading mode of the data in the storage system by a user is in accordance with expectations, the power-saving storage device can also control the disk to wake up the disk in advance before the data is written or read, so that the data reading and writing efficiency is improved.
On the basis of the above embodiment, calculating the first number of online disks before the power-saving group is woken up includes the following steps as shown in fig. 6:
s601, calculating the total number of existing disk control objects before the power-saving group is awakened, wherein each disk control object is used for describing an online disk.
For example, in the process of calculating the first number of online disks before the power saving group corresponding to the read/write instruction is awakened, the total number of disk control objects existing in the power control module before the power saving group is awakened may be specifically calculated, and as described above, each disk control object is used to describe one online disk.
S602, determining the total number as a first number of online disks before the power-saving group is awakened.
Since each disk control object is used to describe an online disk, the total number of disk control objects already present in the power control module before the power-saving group is woken up can be used as the first number of online disks before the power-saving group is woken up.
Optionally, predicting the second number of online disks after the power-saving group is woken up includes the following steps as shown in fig. 7:
and S701, predicting the number of the disks needing to be started after the power-saving group is awakened.
For example, in the process of predicting the second number of online disks after the power saving group corresponding to the read/write instruction is awakened, the number of disks that need to be started after the power saving group is awakened may be predicted first.
Optionally, predicting the number of disks that need to be started after the power saving group is awakened includes: determining the number of started disks in a plurality of disks corresponding to the power saving group; and predicting the number of the disks needing to be started after the power-saving group is awakened according to the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks.
For example, the power saving group corresponding to the read/write command is the power saving group 3 shown in fig. 2 or fig. 3. Under the condition that the electricity-saving storage device receives a read-write instruction of a user, the online electricity-saving group comprises an electricity-saving group 1 and an electricity-saving group 2, and other electricity-saving groups are in a power-off state. In the process that the power-saving storage device predicts the number of disks that need to be started after the power-saving group 3 is woken up, the power-saving storage device may determine the number of disks that have been started in the plurality of disks that the power-saving group 3 relates to, and further predict the number of disks that need to be started after the power-saving group 3 is woken up according to the number of disks that the power-saving group 3 relates to and the number of disks that have been started in the plurality of disks.
Optionally, determining the number of started disks in the plurality of disks corresponding to the power saving group includes: determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object; and determining the number of the disks corresponding to the disk control object in the plurality of disks corresponding to the power saving group as the number of the started disks in the plurality of disks corresponding to the power saving group.
For example, the plurality of disks involved in the power saving group 3 include disk 3, disk 4, disk 5, and disk 6. In the process of determining the number of started disks in the plurality of disks related to the power saving group 3, it may be specifically determined whether each disk in the disks 3, 4, 5, and 6 has a corresponding disk control object, that is, whether a disk control object corresponding to each disk in the disks 3, 4, 5, and 6 exists in the power control module is detected. If the disk control object corresponding to one of the disk 3, the disk 4, the disk 5 and the disk 6 is in the power control module, it indicates that the disk is a started disk, i.e. an online physical disk or an online disk.
For example, when the power saving group 1 and the power saving group 2 are online power saving groups, the disks 1 to 5 are in a powered-on state, and the power control module includes disk control objects corresponding to the disks 1 to 5, respectively. Therefore, the disks 3, 4, and 5 of the plurality of disks related to the power saving group 3 are respectively disks corresponding to the disk control targets, that is, the disks 3, 4, and 5 of the plurality of disks related to the power saving group 3 are already started disks. Further, it is determined that the number of started disks among the plurality of disks involved in the power saving group 3 is 3.
Optionally, predicting the number of disks that need to be started after the power-saving group is awakened according to the number of the disks corresponding to the power-saving group and the number of disks already started in the disks, including: and determining the difference value between the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks as the number of the disks needing to be started after the power-saving group is awakened.
For example, as can be seen from fig. 3, in the case where the power saving groups 1 and 2 are online power saving groups, the disks 1 to 5 are in a power-on state. The plurality of disks involved in the power saving group 3 include disk 3, disk 4, disk 5 and disk 6. Therefore, the power saving group 3 has 3 disks out of the 4 disks, for example, the disk 3, the disk 4, and the disk 5 are started. Further, the number of the plurality of disks, for example, 4, involved in the power saving group 3 and the number of the disks, for example, 3, that have been started up, among the plurality of disks involved in the power saving group 3 are determined. Therefore, it can be predicted that the number of the disks that need to be started after the power saving group 3 is woken up is 1, i.e. the difference between the number 4 of the disks involved in the power saving group 3 and the number 3 of the started disks in the disks involved in the power saving group 3. In addition, as can be seen from fig. 3, the disk to be started after the power saving group 3 is woken up is the disk 6.
S702, predicting the second number of the online disks after the power-saving group is awakened according to the first number and the number of the disks needing to be started after the power-saving group is awakened.
For example, in the case of calculating a first number of online disks before the power-saving group is woken up and a number of disks that need to be started up after the power-saving group is woken up, a second number of online disks after the power-saving group is woken up can be predicted according to the first number and the number of disks that need to be started up after the power-saving group is woken up.
Optionally, predicting a second number of online disks after the power-saving group is woken up according to the first number and the number of disks that need to be started up after the power-saving group is woken up, including: determining a sum of the first number and the number of disks that need to be started after the power-saving group is woken up as a second number of online disks after the power-saving group is woken up.
For example, the first number of online disks is 5 before power save group 3 is awakened. The number of disks that need to be started after the power saving group 3 is woken up is 1, and therefore, the second number of online disks after the power saving group is woken up is 6, which is the sum of the first number 5 and the number of disks that need to be started after the power saving group 3 is woken up is 1.
According to the embodiment of the application, each disk control object is used for describing one online disk, so that the total number of the existing disk control objects before the power-saving group is awakened can be used as the first number of the online disks before the power-saving group is awakened, and the calculation accuracy of the first number is improved. In addition, the calculation accuracy of the second number can be improved by predicting the number of the disks which need to be started after the power-saving group is awakened and predicting the second number of the online disks after the power-saving group is awakened according to the first number and the number of the disks which need to be started after the power-saving group is awakened. Further, whether the power saving group corresponding to the read-write command needs to be awakened or not can be accurately determined according to the first quantity and the second quantity. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
The process of predicting the second number of online disks after the power save group has been awakened is described below in connection with a specific embodiment. As shown in fig. 8, the process includes the following steps:
s801, start.
S802, making M equal to the number of disks related to a single power saving group.
For example, in this embodiment, the number of disks involved in a single power saving group may specifically be the number of disks corresponding to each power saving group. For example, as shown in fig. 2 or fig. 3, a single power-saving group involves 4 disks, and therefore, M is equal to 4.
And S803, traversing and accessing the plurality of disks related to the power saving group corresponding to the read-write command.
For example, the power saving group corresponding to the read/write command is the power saving group 3, and the power saving group 3 relates to the disk 3, the disk 4, the disk 5, and the disk 6. Specifically, traversal access may be performed on the disk 3, the disk 4, the disk 5, and the disk 6.
And S804, judging whether the traversal access is finished or not. If so, perform S807, otherwise perform S805.
For example, after traversing accesses to the disk 3, the disk 4, the disk 5, and the disk 6, respectively, it may be determined that the traversal accesses end.
And S805, judging whether a disk control object corresponding to the currently traversed and accessed disk exists in the power control module. If so, perform S806, otherwise perform S803.
And S806, making M equal to M-1.
For example, the first traversal accesses a disk that is disk 3. In S805, it can be determined in conjunction with fig. 5 that the disk control target corresponding to the disk 3 is in the power control module, and therefore M is 4-1. The disk accessed in the second traversal is disk 4, and in S805, it can be determined, with reference to fig. 5, that the disk control object corresponding to disk 4 is in the power control module, so that M is 3-1. The disk accessed in the third traversal is the disk 5, and in S805, it can be determined, with reference to fig. 5, that the disk control object corresponding to the disk 5 is in the power control module, so that M is 2-1, that is, M is 1. The disk accessed in the fourth traversal is the disk 6, and in S805, it can be determined, with reference to fig. 5, that the disk control object corresponding to the disk 6 is not in the power control module, so that the final value of M is 1.
S807, the number of the disk control objects existing in the power control module is recorded as N, and M + N is returned.
For example, as can be seen from fig. 5, the number of disk control objects existing in the power control module is 5, that is, N is 5, and then M + N is 6. The M + N is the second number of online disks after the power-saving group 3 is woken up.
And S808, ending.
According to the embodiment of the application, each disk control object is used for describing one online disk, so that the total number of the existing disk control objects before the power-saving group is awakened can be used as the first number of the online disks before the power-saving group is awakened, and the calculation accuracy of the first number is improved. In addition, the calculation accuracy of the second number can be improved by predicting the number of the disks which need to be started after the power-saving group is awakened and predicting the second number of the online disks after the power-saving group is awakened according to the first number and the number of the disks which need to be started after the power-saving group is awakened. Further, whether the power saving group corresponding to the read-write command needs to be awakened or not can be accurately determined according to the first quantity and the second quantity. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
The following describes a process of performing a read/write operation on the power saving group corresponding to the read/write command in conjunction with a specific embodiment. As shown in fig. 9, the process includes the following steps:
and S901, starting.
And S902, judging whether the power saving group corresponding to the read-write command is an online power saving group. If so, perform S904, otherwise perform S903.
For example, the power saving group corresponding to the read/write command is the power saving group 3, and the power saving group 3 can be changed into an online power saving group by performing the wakeup process on the power saving group 3. In the process of performing the read/write operation on the power saving group 3, it can be determined whether the power saving group 3 is an online power saving group.
And S903, reading and writing data and reporting errors.
After S902, if it is determined that the power saving group 3 is not an online power saving group, data read/write error reporting, for example, data Input/Output (I/O) error reporting, may be performed.
And S904, putting the read-write instruction into the redundancy algorithm module for processing until the logic disk module returns that the read-write is successful.
After S902, when the power saving group 3 is determined to be an online power saving group, the read-write command may be put into the redundancy algorithm module, so that the read-write command may be processed sequentially by the redundancy algorithm module, the logic disk module, and the physical disk module. In the case that the read-write instruction is successfully executed, the logical disk module may return that the read-write was successful. Specifically, the redundancy algorithm may refer to the redundancy algorithm in the RAID technology mentioned above, and details are not described here.
And S905, ending.
FIG. 10 shows a flow diagram of a method of power saving storage according to another embodiment of the present application. As shown in fig. 10, the method may include:
s1001, determining a power saving group needing to be read and written according to a read-write instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks.
Specifically, the implementation process of S1001 and S401 is consistent with a specific principle, and is not described herein again.
S1002, calculating a first number of online disks before the power-saving group is awakened, and predicting a second number of online disks after the power-saving group is awakened.
Specifically, the implementation process of S1002 and S402 is consistent with a specific principle, and is not described herein again.
S1003, when the first number is smaller than the second number and the second number is smaller than or equal to a first preset value, performing awakening processing on the power saving group.
Specifically, when the first number is smaller than the second number, it indicates that the number of online disks is increased after the power saving group corresponding to the read/write instruction is awakened, that is, a part of the disks in the power saving group may be in a power-down state. Further, whether the second number is smaller than or equal to a first preset value or not can be judged, and the power-saving group is awakened under the condition that the second number is smaller than or equal to the first preset value. That is, in the case where it is predicted that the second number of online disks after the power-saving group is woken up is less than or equal to the first preset value, the power-saving group is subjected to a wake-up process. And in the case that the second number of the online disks after the power-saving group is awakened is predicted to be larger than the first preset value, the power-saving group is not subjected to awakening processing.
And S1004, performing read-write operation on the power-saving group when the power-saving group is awakened.
Specifically, the implementation process of S1004 and S404 is consistent with specific principles, and is not described herein again.
In the embodiment of the application, when the first number is smaller than the second number, it is further determined whether the second number is smaller than or equal to a first preset value, and when the second number is smaller than or equal to the first preset value, the power saving group is awakened. Therefore, the problem that the power consumption is increased due to the fact that the second number of the online disks is too large after the power-saving group corresponding to the read-write command is awakened can be solved, the power consumption of the disks can be effectively controlled, and the service lives of the disks can be prolonged.
On the basis of the above embodiment, the wake-up processing for the power saving group includes the following steps as shown in fig. 11:
s1101, determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object.
For example, the power saving group corresponding to the read/write command is the power saving group 3. It can further be determined whether the disk control object of each disk in the plurality of disks corresponding to the power saving group 3 already exists in the power control module.
S1102, in the case that the disk control object corresponding to any disk in the multiple disks does not exist, creating a disk control object corresponding to the any disk, and setting the reference count corresponding to the any disk as a second preset value.
For example, the plurality of disks corresponding to the power saving group 3 are the disk 3, the disk 4, the disk 5, and the disk 6, respectively. The disk control object corresponding to the disk 6 is not in the power control module. In this case, a disk control object corresponding to the disk 6, for example, the disk control object 6, may be created in the power control module, and the reference count in the disk control object 6 may be set to a second preset value, which may be 1, for example.
And S1103, performing wakeup processing on any disk.
For example, after the disk control object corresponding to the disk 6 is created in the power control module, the disk 6 may be further woken up, so that the power saving group 3 may be woken up. Further, the power saving group 3 can also be recorded in the power control module as an online power saving group.
It is understood that, in other embodiments, the execution sequence between the creation of the disk control object corresponding to the disk 6 and the wake-up processing on the disk 6 may not be limited. For example, when the disk control object corresponding to the disk 6 is not in the power control module, the wake-up process may be performed on the disk 6 first, and the disk control object corresponding to the disk 6 may be created in the power control module. Alternatively, the creation of the disk control object corresponding to the disk 6 and the wake-up processing on the disk 6 may also be performed in parallel.
And S1104, under the condition that the disk control object corresponding to any one of the disks already exists, increasing a reference count corresponding to the any one disk by a third preset value, wherein the reference count corresponding to the any one disk is the number of the node groups sharing the any one disk.
For example, in a case where it is determined that the disk control objects corresponding to the disk 3, the disk 4, and the disk 5 corresponding to the power saving group 3 already exist in the power control module, each reference count in the disk control object 3, the disk control object 4, and the disk control object 5 may be increased by a third preset value, for example, the third preset value is 1. For example, before the power-saving group 3 is woken up, since the disk 3 is shared by the online power-saving group 1 and the online power-saving group 2, the reference count in the disk control object 3 is 2. Similarly, the reference count in the disk control object 4 is 2, and the reference count in the disk control object 5 is 1. During the wake-up process for the power saving group 3, since the disks 3, 4, and 5 are to be used by the power saving group 3, each reference count in the disk control object 3, 4, and 5 may be incremented by 1.
In the embodiment of the application, whether a corresponding disk control object exists in each of a plurality of disks corresponding to the power saving group is determined, and when the disk control object corresponding to any disk in the plurality of disks does not exist, the disk control object corresponding to the any disk is created, and the reference count corresponding to the any disk is set to be a second preset value, so that the any disk is wakened up. And under the condition that the disk control object corresponding to any disk in the multiple disks exists, increasing a reference count corresponding to the any disk by a third preset value, wherein the reference count corresponding to the any disk is the number of the node groups sharing the any disk. Therefore, the power-saving group which needs to be read and written is awakened, and the power-saving group which does not need to be read and written keeps a power-down state, so that the power consumption of the disk can be reduced and the service life of the disk can be prolonged under the condition that the storage system comprises a large number of disks.
The wake-up procedure of the power saving group is described in detail below with a specific embodiment. As shown in fig. 12, the process includes the following steps:
and S1201, starting.
And S1202, determining the power saving group related to the read-write command.
S1203, traversing the disk control objects corresponding to the plurality of disks related to the power saving group.
And S1204, judging whether the traversal is finished, if so, executing S1208, and otherwise, executing S1205.
And S1205, judging whether the currently traversed disk control object exists in the power control module. If so, go to S1206, otherwise go to S1207.
And S1206, adding 1 to the reference count in the currently traversed disk control object.
S1207, creating the disk control object in the power control module, setting the reference count in the disk control object to an initial value 1, and waking up the physical disk corresponding to the disk control object.
And S1208, ending.
Specifically, the implementation process and specific principles of S1201-S1208 may refer to S1101-S1104, and are not described herein again. In addition, the condition implied in this embodiment is that the correspondence between the power saving group and the disk can be obtained by linear calculation, for example, refer to fig. 2 or fig. 3. For example, the power saving group with serial number 1, the corresponding disks are disks 1-4 in sequence. The power saving group with the serial number 2 has the corresponding disk sequence of 2-5 disks, and so on, the power saving group with the serial number 8 has the corresponding disk sequence of 8 disks and 1-3 disks. Specifically, the traversal order involved in this embodiment may refer to a disk order corresponding to the power-saving group.
On the basis of the above embodiment, after performing the read-write operation on the power saving group, the method further includes: and closing the power saving group. For example, after performing read/write operations on the node group 3, the node group 3 may be further subjected to shutdown processing.
Specifically, the shutdown processing of the power saving group includes the following steps as shown in fig. 13:
and S1301, reducing the reference count corresponding to each disk in the plurality of disks corresponding to the power saving group by a third preset value to obtain an updated reference count corresponding to each disk in the plurality of disks.
Specifically, in the process of closing the node group 3, the reference counts in the disk control objects respectively corresponding to the disk 3, the disk 4, and the disk 5 corresponding to the node group 3 may be decreased by a third preset value, for example, the third preset value is 1.
For example, after the node group 3 is woken up, according to the above embodiment, the reference count in the disk control object 3 is 3, the reference count in the disk control object 4 is 3, the reference count in the disk control object 5 is 2, and the reference count in the disk control object 6 is 1.
During the process of closing the node group 3, the reference count of each of the disk control object 3, the disk control object 4, the disk control object 5, and the disk control object 6 may be respectively decremented by 1, so as to obtain updated reference counts corresponding to the disk control object 3, the disk control object 4, the disk control object 5, and the disk control object 6, respectively. It can be understood that the reference count in the disk control object is the reference count corresponding to the disk described by the disk control object.
And S1302, when the updated reference count corresponding to any one of the plurality of disks is 0, powering down the any one disk, and deleting the disk control object corresponding to the any one disk.
For example, after subtracting 1 from each reference count in the disk control object 3, the disk control object 4, the disk control object 5, and the disk control object 6, respectively, the reference count in the disk control object 6 becomes 0, in which case, power-down processing may be performed on the disk 6, and the disk control object 6 corresponding to the disk 6 is deleted from the power control module, thereby powering down the node group 3. Further, the online node group 3 may also be deleted from the power control module.
According to the embodiment of the application, after the read-write operation is carried out on the electricity-saving group, the electricity-saving group is closed, so that the electricity-saving group which does not need to be read and written enters a power-off state, the power consumption of a disk can be reduced under the condition that a storage system comprises a large number of disks, and the service life of the disk is prolonged.
The shutdown process of an online power saving group is described in detail below with a specific embodiment. As shown in fig. 14, the process includes the following steps:
and S1401, starting.
S1402, traversing the disk control objects corresponding to the disks related to the online power saving group.
And S1403, judging whether the traversal is finished or not. If so, perform S1407, otherwise perform S1404.
And S1404, subtracting 1 from the reference count in the currently traversed disk control object.
S1405, judging whether the reference count is 0. If so, go to S1406, otherwise go to S1402.
And S1406, powering off the disk corresponding to the currently traversed disk control object, and deleting the disk control object from the power control module.
And S1407, deleting the online power saving group from the power control module.
And S1408, ending.
Specifically, the implementation processes and specific principles of S1401 to S1408 may refer to S1301 to S1302, and are not described herein again.
According to the embodiment of the application, after the read-write operation is carried out on the electricity-saving group, the electricity-saving group is closed, so that the electricity-saving group which does not need to be read and written enters the power-off state, the electric power recovery processing can be realized, and the electric power consumption is saved.
Specifically, the flow shown in fig. 8 may be written as a "flow for predicting the number of online disks after a certain power saving group is awakened", the flow shown in fig. 9 may be written as a "flow for reading and writing a certain power saving group", the flow shown in fig. 12 may be written as a "flow for awakening a certain power saving group", and the flow shown in fig. 14 may be written as a "flow for turning off a certain online power saving group". The relationships between fig. 8, 9, 12, 14 may be: when the read/write command relates to a certain power saving group, it is predicted whether the number of online disks after the power saving group is awakened will increase compared to the number of online disks before the power saving group is awakened by calling the flow shown in fig. 8, and when the number of online disks increases or the number of online disks after the power saving group is awakened is smaller than the first preset value, the flow shown in fig. 12 is called to perform the awakening process on the power saving group. After the power-saving group is awakened, the read-write operation is performed on the power-saving group by calling the flow shown in fig. 9. After the read/write operation is completed, the power saving group is turned off by referring to the flow shown in fig. 14. If it is predicted that the number of online disks after the power-saving group is awakened is not increased compared with the number of online disks before the power-saving group is awakened by calling the flow shown in fig. 8, the flow shown in fig. 9 may be directly called to perform read/write operation on the power-saving group, and after the read/write operation is completed, the flow shown in fig. 14 is called to close the power-saving group.
In summary, the embodiment may employ RAID2.0 technology to provide redundancy protection and performance guarantee for data. Through a sequential rotation mode, only one disk used by two adjacent power saving groups is different, so that switching overhead caused by power-on and power-off during continuous Input/Output (I/O) reading and writing can be reduced. In addition, the use condition of the power saving group to the disk is described by referring to the counting, so that the conversion between power-up and power-down of the power saving group and power-up and power-down of the disk is realized. In addition, by predicting the number of the online disks after a certain power saving group is awakened, a user can acquire and control the number of the online disks by a pre-calling method, so that the power saving function is realized.
Fig. 15 shows a block diagram of a power saving storage device according to an embodiment of the present application. It is to be understood that the structural schematic diagram of the power saving storage device shown in fig. 15 and the structural schematic diagram of the power saving storage device shown in fig. 5 are respectively structures of the power saving storage device explained from different perspectives. As shown in fig. 15, the apparatus 150 may include:
a determining module 151, configured to determine, according to the read-write instruction, a power saving group that needs to be read and written, where the power saving group includes multiple partitions, and each partition in the multiple partitions belongs to a different disk;
a calculating module 152, configured to calculate a first number of online disks before the power-saving group is woken up;
a prediction module 153 for predicting a second number of online disks after the power-save group is woken up;
a wake-up processing module 154, configured to wake up the power saving group if the first number is smaller than the second number;
and the read-write operation module 155 is configured to perform read-write operation on the power-saving group when the power-saving group is awakened.
Optionally, the calculating module 152 is specifically configured to: calculating the total number of existing disk control objects before the power-saving group is awakened, wherein each disk control object is used for describing an online disk; the total number is determined as a first number of online disks before the power-save group is woken up.
Optionally, the prediction module 153 is specifically configured to: predicting the number of disks needing to be started after the power-saving group is awakened; and predicting a second number of online disks after the power-saving group is awakened according to the first number and the number of disks needing to be started after the power-saving group is awakened.
Optionally, the prediction module 153 includes a determining unit 1531, and the determining unit 1531 is configured to: determining the number of started disks in a plurality of disks corresponding to the power saving group; and predicting the number of the disks needing to be started after the power-saving group is awakened according to the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks.
Optionally, the determining unit 1531 is specifically configured to: determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object; and determining the number of the disks corresponding to the disk control object in the plurality of disks corresponding to the power saving group as the number of the started disks in the plurality of disks corresponding to the power saving group.
Optionally, the determining unit 1531 is specifically configured to: and determining the difference value between the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks as the number of the disks needing to be started after the power-saving group is awakened.
Optionally, the determining unit 1531 is specifically configured to: determining a sum of the first number and the number of disks that need to be started after the power-saving group is woken up as a second number of online disks after the power-saving group is woken up.
Optionally, the wake-up processing module 154 is specifically configured to: and when the first number is smaller than the second number and the second number is smaller than or equal to a first preset value, performing awakening processing on the power-saving group.
Optionally, the wake-up processing module 154 is specifically configured to: determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object; under the condition that the disk control object corresponding to any disk in the multiple disks does not exist, creating the disk control object corresponding to any disk, and setting the reference count corresponding to any disk as a second preset value; and performing wake-up processing on any disk.
Optionally, the apparatus 150 further comprises: the reference count control module 156 is configured to, when a disk control object corresponding to any disk in the multiple disks already exists, increase a reference count corresponding to the disk by a third preset value, where the reference count corresponding to the disk is the number of node groups sharing the disk.
Optionally, the apparatus 150 further comprises: a shutdown processing module 157, configured to perform shutdown processing on the power saving group after the read/write operation module 155 performs read/write operation on the power saving group.
Optionally, the shutdown processing module 157 is specifically configured to: reducing the reference count corresponding to each disk in the plurality of disks corresponding to the power saving group by a third preset value to obtain an updated reference count corresponding to each disk in the plurality of disks; and when the updated reference count corresponding to any one of the plurality of disks is 0, performing power-off processing on the any one disk, and deleting the disk control object corresponding to the any one disk.
Optionally, the plurality of disks corresponding to the power saving group are different from the plurality of disks corresponding to the adjacent power saving group of the power saving group by one disk.
The functions of each module in each apparatus in the embodiment of the present application may refer to corresponding descriptions in the above method, and are not described herein again.
FIG. 16 shows a block diagram of a power-saving storage device according to an embodiment of the present application. As shown in fig. 16, the power saving storage device includes: a memory 1610 and a processor 1620, wherein the memory 1610 has stored therein computer programs that are executable on the processor 1620. The processor 1620, when executing the computer program, implements the method of power saving storage in the above-described embodiments. The number of the memory 1610 and the processor 1620 may be one or more.
The application program field restoration device further includes:
and a communication interface 1630, configured to communicate with an external device for data interactive transmission.
If the memory 1610, the processor 1620 and the communication interface 1630 are implemented independently, the memory 1610, the processor 1620 and the communication interface 1630 may be connected to each other through a bus and perform communication with each other. The bus may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, an Extended ISA (EISA) bus, or the like. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of illustration, only one thick line is shown in FIG. 16, but this is not intended to represent only one bus or type of bus.
Alternatively, in an implementation, if the memory 1610, the processor 1620 and the communication interface 1630 are integrated on a chip, the memory 1610, the processor 1620 and the communication interface 1630 may communicate with each other through an internal interface.
Embodiments of the present application provide a computer-readable storage medium, which stores a computer program, and when the program is executed by a processor, the computer program implements the method provided in the embodiments of the present application.
The embodiment of the present application further provides a chip, where the chip includes a processor, and is configured to call and execute the instruction stored in the memory from the memory, so that the communication device in which the chip is installed executes the method provided in the embodiment of the present application.
An embodiment of the present application further provides a chip, including: the system comprises an input interface, an output interface, a processor and a memory, wherein the input interface, the output interface, the processor and the memory are connected through an internal connection path, the processor is used for executing codes in the memory, and when the codes are executed, the processor is used for executing the method provided by the embodiment of the application.
It should be understood that the processor may be a Central Processing Unit (CPU), other general purpose processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or any conventional processor or the like. It is noted that the processor may be an advanced reduced instruction set machine (ARM) architecture supported processor.
Further, optionally, the memory may include a read-only memory and a random access memory, and may further include a nonvolatile random access memory. The memory may be either volatile memory or nonvolatile memory, or may include both volatile and nonvolatile memory. The non-volatile memory may include a read-only memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an electrically Erasable EPROM (EEPROM), or a flash memory. Volatile memory can include Random Access Memory (RAM), which acts as external cache memory. By way of example, and not limitation, many forms of RAM are available. For example, Static Random Access Memory (SRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), double data rate synchronous SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), synchlink DRAM (SLDRAM), and direct memory bus RAM (DR RAM).
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The procedures or functions according to the present application are generated in whole or in part when the computer program instructions are loaded and executed on a computer. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium.
In the description herein, references to the description of the term "one embodiment," "some embodiments," "an example," "a specific example," or "some examples," etc., mean that a particular feature, structure, material, or characteristic described in connection with the embodiment or example is included in at least one embodiment or example of the application. Furthermore, the particular features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples. Furthermore, various embodiments or examples and features of different embodiments or examples described in this specification can be combined and combined by one skilled in the art without contradiction.
Furthermore, the terms "first", "second" and "first" are used for descriptive purposes only and are not to be construed as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one such feature. In the description of the present application, "a plurality" means two or more unless specifically limited otherwise.
Any process or method descriptions in flow charts or otherwise described herein may be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps of the process. And the scope of the preferred embodiments of the present application includes other implementations in which functions may be performed out of the order shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved.
The logic and/or steps represented in the flowcharts or otherwise described herein, e.g., an ordered listing of executable instructions that can be considered to implement logical functions, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions.
It should be understood that portions of the present application may be implemented in hardware, software, firmware, or a combination thereof. In the above embodiments, the various steps or methods may be implemented in software or firmware stored in memory and executed by a suitable instruction execution system. All or part of the steps of the method of the above embodiments may be implemented by hardware that is configured to be instructed to perform the relevant steps by a program, which may be stored in a computer-readable storage medium, and which, when executed, includes one or a combination of the steps of the method embodiments.
In addition, functional units in the embodiments of the present application may be integrated into one processing module, or each unit may exist alone physically, or two or more units are integrated into one module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. The integrated module may also be stored in a computer-readable storage medium if it is implemented in the form of a software functional module and sold or used as a separate product. The storage medium may be a read-only memory, a magnetic or optical disk, or the like.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive various changes or substitutions within the technical scope of the present application, and these should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.
Claims (14)
1. A power saving storage method, the method comprising:
determining a power saving group needing reading and writing according to a reading and writing instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different magnetic disks respectively; the number of the disks related to the power saving group is the same as that of the partitions in each disk, and the number of the partitions included in the power saving group is the same as that of the partitions in each disk;
calculating a first number of online disks before the power-saving group is awakened and predicting a second number of online disks after the power-saving group is awakened;
when the first number is smaller than the second number and the second number is smaller than or equal to a first preset value, performing awakening processing on the power saving group;
and under the condition that the power saving group is awakened, performing read-write operation on the power saving group.
2. The method of claim 1, wherein calculating the first number of online disks before the power-saving group is woken up comprises:
calculating the total number of existing disk control objects before the power saving group is awakened, wherein each disk control object is used for describing an online disk;
determining the total number as a first number of online disks before the power-saving group is woken up.
3. The method of claim 2, wherein predicting the second number of online disks after the power-saving group is woken up comprises:
predicting the number of disks needing to be started after the power saving group is awakened;
and predicting the second number of the online disks after the power-saving group is awakened according to the first number and the number of the disks needing to be started after the power-saving group is awakened.
4. The method of claim 3, wherein predicting the number of disks that need to be started after the power-saving group is woken up comprises:
determining the number of started disks in a plurality of disks corresponding to the power saving group;
and predicting the number of the disks needing to be started after the power-saving group is awakened according to the number of the disks corresponding to the power-saving group and the number of the started disks in the disks.
5. The method of claim 4, wherein determining the number of disks that have been started in the plurality of disks corresponding to the power-saving group comprises:
determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object;
and determining the number of the disks corresponding to the disk control objects in the plurality of disks corresponding to the power-saving group as the number of the started disks in the plurality of disks corresponding to the power-saving group.
6. The method of claim 4, wherein predicting the number of disks that need to be started after the power-saving group is woken up according to the number of the plurality of disks corresponding to the power-saving group and the number of started disks in the plurality of disks comprises:
and determining the difference value between the number of the plurality of disks corresponding to the power-saving group and the number of the started disks in the plurality of disks as the number of the disks which need to be started after the power-saving group is awakened.
7. The method of claim 3, wherein predicting the second number of online disks after the power-saving group is woken up based on the first number and the number of disks that need to be started up after the power-saving group is woken up comprises:
and determining the sum of the first number and the number of the disks needing to be started after the power-saving group is awakened as a second number of the online disks after the power-saving group is awakened.
8. The method of claim 1, wherein waking up the power-saving group comprises:
determining whether each disk in a plurality of disks corresponding to the power saving group has a corresponding disk control object;
under the condition that the disk control object corresponding to any disk in the multiple disks does not exist, creating the disk control object corresponding to any disk, and setting the reference count corresponding to any disk as a second preset value;
and performing awakening processing on any disk.
9. The method of claim 8, further comprising:
and under the condition that the disk control object corresponding to any disk in the multiple disks exists, increasing a reference count corresponding to any disk by a third preset value, wherein the reference count corresponding to any disk is the number of node groups sharing any disk.
10. The method of any of claims 1 to 9, wherein after performing the read and write operations on the power-saving group, the method further comprises:
and closing the power saving group.
11. The method of claim 10, wherein turning off the power saving group comprises:
reducing the reference count corresponding to each disk in the plurality of disks corresponding to the power saving group by a third preset value to obtain an updated reference count corresponding to each disk in the plurality of disks;
and under the condition that the updated reference count corresponding to any one of the plurality of disks is 0, performing power-off processing on any one disk, and deleting the disk control object corresponding to any one disk.
12. A power saving storage device, the device comprising:
the determining module is used for determining a power saving group needing to be read and written according to the reading and writing instruction, wherein the power saving group comprises a plurality of partitions, and each partition in the plurality of partitions belongs to different disks respectively; the number of the disks related to the power saving group is the same as that of the partitions in each disk, and the number of the partitions included in the power saving group is the same as that of the partitions in each disk;
the computing module is used for computing the first number of the online disks before the power saving group is awakened;
a prediction module to predict a second number of online disks after the power-saving group is awakened;
the awakening processing module is used for awakening the power saving group under the condition that the first number is smaller than the second number and the second number is smaller than or equal to a first preset value;
and the read-write operation module is used for performing read-write operation on the power saving group under the condition that the power saving group is awakened.
13. An application site restoration device, comprising: a processor and a memory, the memory having stored therein instructions that are loaded and executed by the processor to implement the method of any of claims 1 to 11.
14. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 11.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011416780.XA CN112540728B (en) | 2020-12-07 | 2020-12-07 | Power-saving storage method, device, equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011416780.XA CN112540728B (en) | 2020-12-07 | 2020-12-07 | Power-saving storage method, device, equipment and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112540728A CN112540728A (en) | 2021-03-23 |
CN112540728B true CN112540728B (en) | 2022-04-01 |
Family
ID=75016181
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011416780.XA Active CN112540728B (en) | 2020-12-07 | 2020-12-07 | Power-saving storage method, device, equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112540728B (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101446857A (en) * | 2008-12-25 | 2009-06-03 | 成都市华为赛门铁克科技有限公司 | Method for energy saving of hard disks and device thereof |
CN104615381A (en) * | 2015-01-18 | 2015-05-13 | 浙江宇视科技有限公司 | Redundancy array of independent disks of video monitoring system |
CN107209712A (en) * | 2015-11-16 | 2017-09-26 | 华为技术有限公司 | Storage system, storage device and disk scheduling method |
CN109491613A (en) * | 2018-11-13 | 2019-03-19 | 深圳龙岗智能视听研究院 | A kind of continuous data protection storage system and its storage method using the system |
CN111459261A (en) * | 2020-04-03 | 2020-07-28 | 北京云宽志业网络技术有限公司 | Disk wake-up method and device, electronic equipment and storage medium |
CN111552439A (en) * | 2020-04-24 | 2020-08-18 | 北京云宽志业网络技术有限公司 | Data storage method, device, system, electronic equipment and storage medium |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7216244B2 (en) * | 2004-02-25 | 2007-05-08 | Hitachi, Ltd. | Data storage system with redundant storage media and method therefor |
JP5060876B2 (en) * | 2007-08-30 | 2012-10-31 | 株式会社日立製作所 | Storage system and storage system power consumption reduction method |
KR101303535B1 (en) * | 2009-12-04 | 2013-09-03 | 한국전자통신연구원 | Memory Disk Composition Method AND APPARaTUS USING MAIN MEMORY |
-
2020
- 2020-12-07 CN CN202011416780.XA patent/CN112540728B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101446857A (en) * | 2008-12-25 | 2009-06-03 | 成都市华为赛门铁克科技有限公司 | Method for energy saving of hard disks and device thereof |
CN104615381A (en) * | 2015-01-18 | 2015-05-13 | 浙江宇视科技有限公司 | Redundancy array of independent disks of video monitoring system |
CN107209712A (en) * | 2015-11-16 | 2017-09-26 | 华为技术有限公司 | Storage system, storage device and disk scheduling method |
CN109491613A (en) * | 2018-11-13 | 2019-03-19 | 深圳龙岗智能视听研究院 | A kind of continuous data protection storage system and its storage method using the system |
CN111459261A (en) * | 2020-04-03 | 2020-07-28 | 北京云宽志业网络技术有限公司 | Disk wake-up method and device, electronic equipment and storage medium |
CN111552439A (en) * | 2020-04-24 | 2020-08-18 | 北京云宽志业网络技术有限公司 | Data storage method, device, system, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN112540728A (en) | 2021-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7330931B2 (en) | Method and system for accessing auxiliary data in power-efficient high-capacity scalable storage system | |
US9368130B2 (en) | Data storage system, method of writing to storage in the data storage system, hard disk and method of forming the hard disk | |
US7792882B2 (en) | Method and system for block allocation for hybrid drives | |
CN104516471B (en) | Method and device for managing power supply of storage system | |
CN102508724B (en) | Disk bad block processing method based on soft RAID (redundant array of independent disks) | |
US7840657B2 (en) | Method and apparatus for power-managing storage devices in a storage pool | |
US20130159651A1 (en) | Storage system and storage migration method | |
US20110231730A1 (en) | Mass storage device and method for offline background scrubbing of solid-state memory devices | |
US20080270719A1 (en) | Method and system for efficient snapshot operations in mass-storage arrays | |
CN103455449B (en) | Non-volatile memory medium access method, data-updating method and equipment | |
CN105009085A (en) | Information processing system, control program, and information processing device | |
JP2000305860A (en) | Information storage system and method for controlling storage in the system | |
CN103635900A (en) | Time-based data partitioning | |
CN103207883A (en) | Method For Metadata Persistence | |
CN111857540B (en) | Data access method, apparatus and computer program product | |
CN103562914A (en) | Resource efficient scale-out file systems | |
CN104615381B (en) | A kind of redundant arrays of inexpensive disks of video monitoring system | |
CN104778018A (en) | Broad-strip disk array based on asymmetric hybrid type disk image and storage method of broad-strip disk array | |
CN111858189B (en) | Offline processing of storage disks | |
US20130117603A1 (en) | Method for completing write operations to a raid drive pool with an abnormally slow drive in a timely fashion | |
CN111736764B (en) | Storage system of database all-in-one machine and data request processing method and device | |
CN115328407A (en) | Cache disk replacing method, device, equipment and storage medium | |
CN112540728B (en) | Power-saving storage method, device, equipment and storage medium | |
CN101408854A (en) | System and method for data backup of logical volume manager | |
CN115495287B (en) | Data backup method and device for MLC NAND and electronic equipment |
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 |