CN114489504B - SSD data management method and related components - Google Patents
SSD data management method and related components Download PDFInfo
- Publication number
- CN114489504B CN114489504B CN202210073296.4A CN202210073296A CN114489504B CN 114489504 B CN114489504 B CN 114489504B CN 202210073296 A CN202210073296 A CN 202210073296A CN 114489504 B CN114489504 B CN 114489504B
- Authority
- CN
- China
- Prior art keywords
- ssd
- data
- current
- stored
- allowed
- 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
- 238000013523 data management Methods 0.000 title claims abstract description 46
- 238000000034 method Methods 0.000 title claims abstract description 46
- 230000036541 health Effects 0.000 claims abstract description 97
- 238000013403 standard screening design Methods 0.000 claims description 139
- 230000000875 corresponding effect Effects 0.000 claims description 24
- 230000002596 correlated effect Effects 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000005012 migration Effects 0.000 claims description 6
- 238000013508 migration Methods 0.000 claims description 6
- 230000001960 triggered effect Effects 0.000 claims description 2
- 230000003321 amplification Effects 0.000 abstract description 20
- 238000003199 nucleic acid amplification method Methods 0.000 abstract description 20
- 230000002035 prolonged effect Effects 0.000 abstract description 9
- 238000010586 diagram Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 239000002245 particle Substances 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010922 spray-dried dispersion Methods 0.000 description 1
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/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention discloses an SSD data management method and related components, which are based on the principle that the size of write amplification is inversely related to the size of the residual space of an SSD, and the maximum data amount which is allowed to be saved by the SSD is determined according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data amount which is allowed to be saved by the SSD, and when the current data amount which is saved by the SSD is larger than the maximum data amount which is allowed to be saved by the SSD, part of data in the SSD is migrated until the current data amount which is not larger than the maximum data amount which is allowed to be saved by the SSD is not migrated, so that when the health of the SSD is smaller, the current data amount which is saved by the SSD is reduced, or is reduced in a step shape, and because the residual space of the SSD is increased, the write amplification of the SSD is reduced, namely the loss of the SSD is reduced, the service life of the SSD is prolonged, and the reliability of data in the SSD is further improved, and the data loss is avoided.
Description
Technical Field
The present invention relates to the field of storage array management, and in particular, to a method and related components for SSD data management.
Background
In an SSD (Solid State Disk), when new data is to replace written old data, the SSD will write the new data to a new physical location, and the written old data will not be valid any more, when new data is to be written to the physical location of the written old data, the written old data needs to be erased first, the erased old data includes old data replaced with written old data and old data not replaced with written old data, the old data replaced with written old data is invalid, and the old data not replaced with written old data is valid data, so that new data needs to be rewritten to the new physical location in the SSD from among the erased old data. Since the SSD must erase old data first when writing new data at the physical location of the written old data, the written old data will be moved multiple times when writing new data, resulting in the physical data being written in an amount that is multiple times the amount of the written data, i.e., the write amplification. The larger the write amplification, the greater the wear on the SSD, which shortens the SSD's life. With the use of flash memory particles of TLC (Triple-Level Cell) and QLC (quad-Level Cell) technologies, although the capacity of flash memory particles of SSD is larger and larger, the number of erasable flash memory particles of SSD is smaller and smaller, the lifetime is shorter and shorter, and it is difficult to guarantee the reliability of data in SSD. Therefore, how to extend the service life of the SSD and ensure the reliability of the data in the SSD is a current urgent problem to be solved.
Disclosure of Invention
The invention aims to provide an SSD data management method, an SSD data management system, an SSD data management device, an SSD data management storage array and a SSD data management computer readable storage medium, so that the write-in amplification of an SSD is reduced, namely the loss of the SSD is reduced, and the service life of the SSD is prolonged.
In order to solve the above technical problems, the present invention provides an SSD data management method applied to a storage array, wherein the storage array includes a plurality of SSDs, and the SSD data management method includes:
determining the current health degree of the SSD;
determining the maximum data amount which is allowed to be stored currently by the SSD according to the current health degree of the SSD and the corresponding relation between the preset health degree of the SSD and the maximum data amount which is allowed to be stored by the SSD; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positively correlated or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased in a step mode;
determining the current data quantity stored in the SSD;
and if the current data amount stored by the SSD is larger than the maximum data amount allowed to be stored by the SSD, migrating part of data in the SSD to other SSDs in the storage array until the current data amount stored by the SSD is not larger than the maximum data amount allowed to be stored by the SSD.
Preferably, determining the current health of the SSD includes:
and periodically determining the current health degree of the SSD.
Preferably, determining the current health of the SSD includes:
determining the current remaining life of the SSD;
determining the maximum data amount which is allowed to be saved by the SSD currently according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data amount which is allowed to be saved by the SSD, wherein the method comprises the following steps:
and determining the maximum data amount which is allowed to be saved by the SSD currently according to the current residual life of the SSD and the corresponding relation between the preset residual life of the SSD and the maximum data amount which is allowed to be saved by the SSD.
Preferably, after determining the current data amount stored in the SSD, the method further includes:
when a data writing request is received, judging whether the current data amount stored in the SSD is smaller than the maximum data amount allowed to be stored in the SSD;
and if the current data amount stored in the SSD is not smaller than the current maximum data amount allowed to be stored in the SSD, writing the data requested to be written into the other SSD, and if the current data amount stored in the SSD is smaller than the current maximum data amount allowed to be stored in the SSD, allowing the data requested to be written into the SSD.
Preferably, after determining that the amount of data currently stored by the SSD is not less than the maximum amount of data currently allowed to be stored by the SSD, the method further includes:
and if the fact that the user has deleted part of data in the residual data of the SSD and the current data amount stored in the SSD is smaller than the maximum data amount which is currently allowed to be stored in the SSD is detected, and when the data writing request is received, the data which is requested to be written in is allowed to be written in the SSD.
Preferably, after determining the current health of the SSD, further comprising:
and when the current health degree of the SSD is lower than the preset health degree, prompting a user that the current health degree of the SSD is too low.
Preferably, migrating the data in the SSD to the other SSD until the amount of data currently stored by the SSD is not greater than the maximum amount of data currently allowed to be stored by the SSD includes:
determining the maximum data amount which is allowed to be stored currently by the other SSDs according to the corresponding relation between the health degree of the preset SSD and the maximum data amount which is allowed to be stored by the SSD;
determining the current data quantity stored by the other SSDs;
determining the current residual allowable stored data amount of the other SSD according to the current stored data amount of the other SSD and the current allowable stored maximum data amount of the other SSD;
determining the current data quantity to be migrated of the SSD according to the current maximum data quantity allowed to be saved by the SSD and the current data quantity saved by the SSD;
and when the current data quantity to be migrated of the SSD is not more than the current remaining data quantity allowed to be saved of the other SSDs, migrating part of data in the SSD to the other SSDs until the current data quantity saved of the SSD is not more than the current allowed maximum data quantity saved of the SSD.
The invention also provides an SSD data management system, comprising:
the SSD current health degree determining unit is used for determining the SSD current health degree;
the SSD current allowed storage maximum data amount determining unit is used for determining the SSD current allowed storage maximum data amount according to the SSD current health degree and the corresponding relation between the preset SSD health degree and the SSD allowed storage maximum data amount; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positively correlated or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased in a step mode;
the SSD current stored data amount determining unit is used for determining the SSD current stored data amount;
the SSD current stored data amount judging unit is used for judging whether the SSD current stored data amount is larger than the SSD current allowed stored maximum data amount or not, and if so, the SSD data migration unit is triggered;
the SSD data migration unit is configured to migrate a portion of data in the SSD to other SSDs in the storage array until the amount of data currently stored in the SSD is not greater than the maximum amount of data currently permitted to be stored in the SSD.
The invention also provides SSD data management equipment, which comprises:
a memory for storing a computer program;
and the processor is used for realizing the steps of the SSD data management method when executing the computer program.
The invention also provides a storage array which comprises a plurality of SSDs and the SSD data management device.
The invention provides an SSD data management method, system, device and storage array, which are based on the principle that the size of write amplification is inversely related to the size of the residual space of an SSD, and according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data amount allowed to be stored by the SSD, the maximum data amount allowed to be stored by the SSD is determined, when the current data amount of the SSD is larger than the maximum data amount allowed to be stored by the SSD, part of data in the SSD is migrated until the current data amount of the SSD is not larger than the maximum data amount allowed to be stored by the SSD, so that when the health of the SSD is smaller, the current data amount of the SSD is reduced, or is reduced in a step shape, and the write amplification of the SSD is reduced, namely the loss of the SSD is reduced, the service life of the SSD is prolonged, and the reliability of the data in the SSD is further improved, and the data loss in the SSD is avoided.
Drawings
In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings used in the prior art and the embodiments will be briefly described below, and it is apparent that the drawings in the following description are only some embodiments of the present invention, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flowchart of an SSD data management method provided by the present invention;
FIG. 2 is a schematic diagram of an SSD data management system according to the present invention;
fig. 3 is a schematic structural diagram of an SSD data management device according to the present invention.
Detailed Description
The core of the invention is to provide an SSD data management method, an SSD data management system, an SSD data management device and an SSD data storage array, so that the write-in amplification of an SSD is reduced, namely the loss of the SSD is reduced, and the service life of the SSD is prolonged.
For the purpose of making the objects, technical solutions and advantages of the embodiments of the present invention more apparent, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are some embodiments of the present invention, but not all embodiments of the present invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
Referring to fig. 1 in detail, fig. 1 is a flowchart of an SSD data management method according to the present invention.
The SSD data management method is applied to a storage array, the storage array comprises a plurality of SSDs, and the SSD data management method comprises the following steps:
s1: determining the current health degree of the SSD;
because the larger the write amplification is, the larger the loss of the SSD is when the data is written each time, the write amplification of the SSD with lower current health degree is reduced, so that the write amplification is smaller when the data is written, the loss of the SSD with lower health degree is also smaller, and the effect of prolonging the service life of the SSD is achieved in sequence. In this embodiment, therefore, it is necessary to determine the current health of the SSD first in order to reduce the write amplification according to the current health of the SSD.
The health of the SSD may be the corresponding response time of the I/O on the SSD, or may be the frequency of data error correction occurring inside the SSD, the remaining life of the SSD, etc., which is not limited in this embodiment.
S2: determining the maximum data volume which is allowed to be stored currently by the SSD according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data volume which is allowed to be stored by the SSD; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positive correlation or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased stepwise;
the larger the residual space of the SSD is, the smaller the write amplification of the SSD is, namely the current stored data volume of the SSD is positively correlated with the write amplification size when the SSD writes data, and the write amplification size when the SSD writes data is positively correlated with the loss of the SSD, so that the smaller the current stored data volume of the SSD is, the smaller the loss generated by the write amplification when the data is written is, and the service life of the SSD is prolonged. Based on the above principle, in this embodiment, the maximum data amount that the SSD is allowed to store is determined according to the current health of the SSD and the corresponding relationship between the preset health of the SSD and the maximum data amount that the SSD is allowed to store, where the corresponding relationship between the preset health of the SSD and the maximum data amount that the SSD is allowed to store includes that the health of the SSD and the maximum data amount that the SSD is allowed to store are positively correlated, or when the health of the SSD is increased, the maximum data amount that the SSD is allowed to store is increased stepwise. That is, for SSDs with lower current health, the maximum amount of data currently allowed to be saved is smaller, so that the loss generated by the write amplification is smaller when writing data into the SSD, and the life of the SSD is advantageously prolonged when the current health of the SSD is lower.
S3: determining the current data quantity stored in the SSD;
considering that the current data amount of the SSD may already exceed the maximum data amount that the SSD is currently allowed to store, some data of the SSD whose current data amount exceeds the maximum data amount that the SSD is currently allowed to store needs to be migrated, so in this embodiment, the current data amount of the SSD is also determined, so that when the current data amount of the SSD is too large, data in the SSD is migrated.
S4: if the current data amount of the SSD is larger than the current allowed maximum data amount of the SSD, transferring part of data in the SSD to other SSDs in the storage array until the current data amount of the SSD is not larger than the current allowed maximum data amount of the SSD.
In order to increase the remaining space of the SSD, reduce the amplification when writing data to reduce the loss of the SSD and prolong the service life of the SSD, in this embodiment, when the current data amount stored in the SSD is greater than the maximum data amount currently allowed to be stored in the SSD, part of the data in the SSD is migrated to other SSDs in the storage array until the current data amount stored in the SSD is not greater than the maximum data amount currently allowed to be stored in the SSD.
It should be noted that, the SSD data management method may also be used in a case of multiple SSD groups RAID (Redundant Arrays of Independent Disks, redundant array of independent disks). Specifically, for SSDs with lower health, the probability of failure is higher, and when a plurality of SSDs form a RAID, if some of the SSDs fail, the data on the failed SSDs can be restored to other SSDs in the RAID through data reconstruction. If more data are stored on the SSD, more data need to be recovered when the data are reconstructed, more time is needed, the possibility of faults of other SSDs in the RAID is increased before the data are reconstructed, and once the number of the failed SSDs exceeds the tolerance range of the RAID, the RAID is invalid and the data in the failed SSD cannot be recovered. In the application, the SSD with low health degree can enable the data amount stored by the SSD to be relatively small, and even if the SSD fails, the data reconstruction can be completed quickly due to the small data amount stored by the SSD, so that the data reliability in RAID is improved. In addition, the operation of migrating portions of the data in the SSD to other SSDs in the storage array may be implemented, but is not limited to, by a storage pool or storage volume.
In summary, in this embodiment, the maximum data amount that the SSD is allowed to store is determined according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data amount that the SSD is allowed to store, and when the current data amount that the SSD is stored is greater than the maximum data amount that the SSD is allowed to store, part of the data in the SSD is migrated until the current data amount that the SSD is stored is not greater than the maximum data amount that the SSD is allowed to store, so that when the health of the SSD is less, the data amount stored in the SSD is also reduced, or is reduced in a stepwise manner, because the remaining space of the SSD is increased, the write amplification of the SSD is reduced, namely the loss of the SSD is reduced, the service life of the SSD is prolonged, and further the reliability of the data in the SSD is improved, and the data loss is avoided.
Based on the above embodiments:
as a preferred embodiment, determining the current health of the SSD includes:
and periodically determining the current health degree of the SSD.
In order to determine the current health of the SSD more timely, when the current health of the SSD is low, the maximum data amount which is allowed to be stored by the SSD is reduced, and partial data in the SSD is migrated when the current data amount which is stored by the SSD is larger than the maximum data amount which is allowed to be stored by the SSD, the service life of the SSD is prolonged. For example, the current health of the SSD is determined once every month.
As a preferred embodiment, determining the current health of the SSD includes:
determining the current remaining life of the SSD;
determining the maximum data amount which is allowed to be saved by the SSD currently according to the current health degree of the SSD and the corresponding relation between the preset health degree of the SSD and the maximum data amount which is allowed to be saved by the SSD, wherein the method comprises the following steps:
and determining the maximum data volume which is allowed to be saved by the SSD at present according to the current residual life of the SSD and the corresponding relation between the preset residual life of the SSD and the maximum data volume which is allowed to be saved by the SSD.
In this embodiment, the current health of the SSD is determined by determining the current remaining lifetime of the SSD, and the maximum data amount that the SSD is currently allowed to store is determined by determining the current remaining lifetime of the SSD and the corresponding relation between the preset remaining lifetime of the SSD and the maximum data amount that the SSD is allowed to store. In addition, a corresponding relation between the residual life of the SSD and the reliability grade of the SSD can be established, the current residual life of the SSD is firstly corresponding to the current reliability grade of the SSD, and then the maximum data amount which is allowed to be saved by the SSD is determined according to the corresponding relation between the reliability grade of the SSD and the maximum data amount which is allowed to be saved by the SSD, for example, when the current residual life of the SSD is more than or equal to 60%, the reliability grade is one-level reliable, and the maximum data amount which is allowed to be saved by the SSD is 100%; when the current residual life of the SSD is more than or equal to 50%, the reliability grade is two-level reliability, and the maximum data amount which the SSD currently allows to store is 90%; when the current residual life of the SSD is more than or equal to 40%, the reliability level is three-level reliability, and the maximum data amount which the SSD is allowed to store currently is 80%; when the current residual life of the SSD is more than or equal to 30%, the reliability level is four-level reliability, and the maximum data amount which the SSD is allowed to store currently is 70%; when the current remaining life of the SSD is less than or equal to 30%, the reliability level is five-level reliable, the maximum data amount that the SSD is currently allowed to store is 60%, and the user can set the corresponding relationship between the remaining life of the SSD and the maximum data amount that the SSD is allowed to store according to the actual needs of the user, which is not particularly limited in this embodiment.
As a preferred embodiment, after determining the current data amount stored in the SSD, the method further includes:
when a data writing request is received, judging whether the current data amount stored in the SSD is smaller than the maximum data amount allowed to be stored in the SSD;
and if the current data amount stored in the SSD is not smaller than the current maximum data amount allowed to be stored in the SSD, writing the data requested to be written into other SSDs, and if the current data amount stored in the SSD is smaller than the current maximum data amount allowed to be stored in the SSD, allowing the data requested to be written into the SSD.
Considering that after part of data in an SSD is migrated to other SSDs in a storage array until the current data amount stored in the SSD is equal to the current allowed maximum data amount of the SSD, if the data is written into the SSD, the current stored data amount of the SSD is larger than the current allowed maximum data amount of the SSD, so that the write amplification is increased, and the service life of the SSD is not prolonged. Therefore, in this embodiment, after determining the current data amount stored in the SSD, when receiving the data writing request, it is determined whether the current data amount stored in the SSD is smaller than the maximum allowed data amount stored in the SSD, if the current data amount stored in the SSD is not smaller than the maximum allowed data amount stored in the SSD, the data to be written is written into the other SSD, and if the current data amount stored in the SSD is smaller than the maximum allowed data amount stored in the SSD, the data to be written is allowed to be written into the SSD, so as to avoid that the current data amount stored in the SSD is larger than the maximum allowed data amount stored in the SSD.
As a preferred embodiment, after determining that the amount of data currently held by the SSD is not less than the maximum amount of data currently allowed to be held by the SSD, further comprising:
and if the fact that the user has deleted part of the data in the residual data of the SSD and the current data amount stored in the SSD is smaller than the current maximum data amount allowed to be stored in the SSD is detected, and when a data writing request is received, the data requested to be written is allowed to be written into the SSD.
As a preferred embodiment, after determining the current health of the SSD, the method further includes:
and when the current health degree of the SSD is lower than the preset health degree, prompting the user that the current health degree of the SSD is too low.
Considering that the possibility of failure may be high when the current health of the SSD is too low, in this embodiment, when the current health of the SSD is lower than the preset health, the user is prompted to replace the SSD with the health lower than the preset health, for example, when the current health of the SSD is lower than 20%, the user is prompted to have the health of the SSD too low by means of a display pop window in the storage array.
As a preferred embodiment, migrating data in the SSD to other SSDs until the amount of data currently held by the SSD is not greater than the maximum amount of data currently allowed to be held by the SSD, includes:
determining the maximum data volume which is allowed to be stored currently by other SSDs according to the corresponding relation between the health degree of the preset SSD and the maximum data volume which is allowed to be stored by the SSD;
determining the current data quantity stored in other SSDs;
determining the current residual allowable stored data amount of the other SSDs according to the current stored data amount of the other SSDs and the current allowable stored maximum data amount of the other SSDs;
determining the current data quantity to be migrated of the SSD according to the current maximum data quantity allowed to be stored by the SSD and the current data quantity stored by the SSD;
and when the current data quantity to be migrated of the SSD is not more than the current remaining data quantity allowed to be saved of the other SSDs, migrating part of data in the SSD to the other SSDs until the current data quantity saved of the SSD is not more than the current allowed maximum data quantity saved of the SSD.
Considering that after migrating data in an SSD to another SSD, the amount of data currently stored in the other SSD may be made to exceed the maximum amount of data currently allowed to be stored in the other SSD, for example, before migrating data, the amount of data currently stored in the other SSD is 60%, the maximum amount of data currently allowed to be stored is 70%, while after migrating data to the other SSD, the amount of data currently stored in the other SSD is 80%, and exceeds the maximum amount of data currently allowed to be stored in the other SSD, so that the amount of data stored in the other SSD is too large, which still results in too large amount of data in the SSD. In order to avoid the above problem, in this embodiment, before migrating part of the data in the SSD to other SSDs, the data amount to be migrated of the SSD is calculated first, that is, the part of the data amount currently stored exceeds the data amount currently allowed to be stored, and the remaining data amount currently allowed to be stored of other SDDs, that is, the part of the difference between the data amount currently stored and the maximum data amount currently allowed to be stored is calculated, then it is determined whether the data amount currently stored in the SSD exceeds the maximum data amount currently allowed to be stored in other SSDs after the part of the data in the SSD is migrated to the other SSDs, and if not, the data stability in the other SSDs is ensured, thereby being beneficial to prolonging the service life of the other SSDs.
Referring to fig. 2 specifically, fig. 2 is a schematic structural diagram of an SSD data management system according to the present invention.
The invention also provides an SSD data management system, comprising:
an SSD current health degree determination unit 21 for determining the current health degree of the SSD;
a maximum data amount determining unit 22, configured to determine a maximum data amount that the SSD is currently allowed to store according to a current health level of the SSD and a correspondence between a preset health level of the SSD and the maximum data amount that the SSD is allowed to store; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positive correlation or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased stepwise;
a data amount determining unit 23 for determining the current data amount of the SSD;
the data amount determining unit 24, configured to determine whether the data amount currently stored in the SSD is greater than the maximum data amount currently allowed to be stored in the SSD, and if so, trigger the SSD data migration unit 25;
and an SSD data migration unit 25 configured to migrate a portion of the data in the SSD to other SSDs in the storage array until the current amount of data stored in the SSD is not greater than the current maximum allowable amount of data stored in the SSD.
For a related description of the SSD data management system, please refer to the above embodiment, and the description is omitted herein.
Referring to fig. 3 in detail, fig. 3 is a schematic structural diagram of an SSD data management device according to the present invention.
The invention also provides SSD data management equipment, which comprises:
a memory 31 for storing a computer program;
a processor 32 for implementing the steps of the SSD data management method as described above when executing a computer program.
For a related description of the SSD data management device, please refer to the above embodiment, and the description is omitted herein.
The invention also provides a storage array which comprises a plurality of SSDs and the SSD data management device.
For a related description of the memory array, please refer to the above embodiment, and the description is omitted herein.
In this specification, each embodiment is described in a progressive manner, and each embodiment is mainly described by a difference from other embodiments, and identical and similar parts between the embodiments are referred to each other. For the device disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant points refer to the description of the method section.
It should be noted that in this specification, relational terms such as first and second, and the like are used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one … …" does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises the element.
Claims (10)
1. An SSD data management method applied to a storage array, wherein the storage array includes a plurality of SSDs, the SSD data management method includes:
determining the current health degree of the SSD;
determining the maximum data amount which is allowed to be stored currently by the SSD according to the current health degree of the SSD and the corresponding relation between the preset health degree of the SSD and the maximum data amount which is allowed to be stored by the SSD; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positively correlated or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased in a step mode;
determining the current data quantity stored in the SSD;
and if the current data amount stored by the SSD is larger than the maximum data amount allowed to be stored by the SSD, migrating part of data in the SSD to other SSDs in the storage array until the current data amount stored by the SSD is not larger than the maximum data amount allowed to be stored by the SSD.
2. The SSD data management method of claim 1, wherein determining a current health of the SSD comprises:
and periodically determining the current health degree of the SSD.
3. The SSD data management method of claim 1, wherein determining a current health of the SSD comprises:
determining the current remaining life of the SSD;
determining the maximum data amount which is allowed to be saved by the SSD currently according to the current health of the SSD and the corresponding relation between the preset health of the SSD and the maximum data amount which is allowed to be saved by the SSD, wherein the method comprises the following steps:
and determining the maximum data amount which is allowed to be saved by the SSD currently according to the current residual life of the SSD and the corresponding relation between the preset residual life of the SSD and the maximum data amount which is allowed to be saved by the SSD.
4. The SSD data management method of claim 1, wherein after determining the amount of data currently held by the SSD, further comprising:
when a data writing request is received, judging whether the current data amount stored in the SSD is smaller than the maximum data amount allowed to be stored in the SSD;
and if the current data amount stored in the SSD is not smaller than the current maximum data amount allowed to be stored in the SSD, writing the data requested to be written into the other SSD, and if the current data amount stored in the SSD is smaller than the current maximum data amount allowed to be stored in the SSD, allowing the data requested to be written into the SSD.
5. The SSD data management method of claim 4, further comprising, after determining that the amount of data currently held by the SSD is not less than the maximum amount of data currently allowed to be held by the SSD:
and if the fact that the user has deleted part of data in the residual data of the SSD and the current data amount stored in the SSD is smaller than the maximum data amount which is currently allowed to be stored in the SSD is detected, and when the data writing request is received, the data which is requested to be written in is allowed to be written in the SSD.
6. The SSD data management method of claim 1, further comprising, after determining the current health of the SSD:
and when the current health degree of the SSD is lower than the preset health degree, prompting a user that the current health degree of the SSD is too low.
7. The SSD data management method of any of claims 1-6, wherein migrating data in the SSD to other SSDs until an amount of data currently held by an SSD is not greater than a maximum amount of data currently allowed to be held by the SSD comprises:
determining the maximum data amount which is allowed to be stored currently by the other SSDs according to the corresponding relation between the health degree of the preset SSD and the maximum data amount which is allowed to be stored by the SSD;
determining the current data quantity stored by the other SSDs;
determining the current residual allowable stored data amount of the other SSD according to the current stored data amount of the other SSD and the current allowable stored maximum data amount of the other SSD;
determining the current data quantity to be migrated of the SSD according to the current maximum data quantity allowed to be saved by the SSD and the current data quantity saved by the SSD;
and when the current data quantity to be migrated of the SSD is not more than the current remaining data quantity allowed to be saved of the other SSDs, migrating part of data in the SSD to the other SSDs until the current data quantity saved of the SSD is not more than the current allowed maximum data quantity saved of the SSD.
8. An SSD data management system applied to a storage array, comprising:
the SSD current health degree determining unit is used for determining the SSD current health degree;
the SSD current allowed storage maximum data amount determining unit is used for determining the SSD current allowed storage maximum data amount according to the SSD current health degree and the corresponding relation between the preset SSD health degree and the SSD allowed storage maximum data amount; the method comprises the steps that when the health degree of the SSD and the maximum data amount allowed to be stored by the SSD are positively correlated or the health degree of the SSD is increased, the maximum data amount allowed to be stored by the SSD is increased in a step mode;
the SSD current stored data amount determining unit is used for determining the SSD current stored data amount;
the SSD current stored data amount judging unit is used for judging whether the SSD current stored data amount is larger than the SSD current allowed stored maximum data amount or not, and if so, the SSD data migration unit is triggered;
the SSD data migration unit is configured to migrate a portion of data in the SSD to other SSDs in the storage array until the amount of data currently stored in the SSD is not greater than the maximum amount of data currently permitted to be stored in the SSD.
9. An SSD data management device, comprising:
a memory for storing a computer program;
a processor for implementing the steps of the SSD data management method of any one of claims 1 to 7 when executing the computer program.
10. A storage array comprising a plurality of SSDs and an SSD data management device of claim 9.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210073296.4A CN114489504B (en) | 2022-01-21 | 2022-01-21 | SSD data management method and related components |
PCT/CN2022/138772 WO2023138264A1 (en) | 2022-01-21 | 2022-12-13 | Ssd data management method and related component |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210073296.4A CN114489504B (en) | 2022-01-21 | 2022-01-21 | SSD data management method and related components |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114489504A CN114489504A (en) | 2022-05-13 |
CN114489504B true CN114489504B (en) | 2023-08-08 |
Family
ID=81473223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210073296.4A Active CN114489504B (en) | 2022-01-21 | 2022-01-21 | SSD data management method and related components |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114489504B (en) |
WO (1) | WO2023138264A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114489504B (en) * | 2022-01-21 | 2023-08-08 | 苏州浪潮智能科技有限公司 | SSD data management method and related components |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103688248A (en) * | 2013-06-29 | 2014-03-26 | 华为技术有限公司 | Management method for storage arrays, device and controller |
CN104346291A (en) * | 2013-08-05 | 2015-02-11 | 炬芯(珠海)科技有限公司 | Storage method and storage system for memory |
CN105760553A (en) * | 2016-03-25 | 2016-07-13 | 北京奇虎科技有限公司 | Data management method and device |
US9652160B1 (en) * | 2015-11-06 | 2017-05-16 | Datadirect Networks, Inc. | Method and system for data migration between high performance computing entities and a data storage supported by a de-clustered raid (DCR) architecture with I/O activity dynamically controlled based on remaining health of data storage devices |
CN108089814A (en) * | 2016-11-23 | 2018-05-29 | 中移(苏州)软件技术有限公司 | A kind of date storage method and device |
CN112256193A (en) * | 2020-09-16 | 2021-01-22 | 浙江大华存储科技有限公司 | Method, device and storage medium for improving data security of solid state disk |
CN113362879A (en) * | 2021-04-19 | 2021-09-07 | 浙江大华存储科技有限公司 | Method and device for predicting service life of solid state disk and readable storage medium |
CN113361208A (en) * | 2021-07-02 | 2021-09-07 | 中国科学院空间应用工程与技术中心 | Solid state disk residual life evaluation method based on comprehensive health index |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
HUE035390T2 (en) * | 2013-09-24 | 2018-05-02 | Huawei Tech Co Ltd | Data migration method, data migration apparatus and storage device |
US11199968B2 (en) * | 2017-10-26 | 2021-12-14 | EMC IP Holding Company LLC | Using recurring write quotas to optimize utilization of solid state storage in a hybrid storage array |
CN109086009B (en) * | 2018-08-03 | 2021-08-03 | 厦门集微科技有限公司 | Monitoring management method and device and computer readable storage medium |
CN110968524B (en) * | 2019-12-09 | 2022-04-12 | Oppo广东移动通信有限公司 | Data storage control method, device, storage medium and electronic device |
CN112230854A (en) * | 2020-10-18 | 2021-01-15 | 苏州浪潮智能科技有限公司 | Method, system, device and medium for managing storage space |
CN114489504B (en) * | 2022-01-21 | 2023-08-08 | 苏州浪潮智能科技有限公司 | SSD data management method and related components |
-
2022
- 2022-01-21 CN CN202210073296.4A patent/CN114489504B/en active Active
- 2022-12-13 WO PCT/CN2022/138772 patent/WO2023138264A1/en unknown
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103688248A (en) * | 2013-06-29 | 2014-03-26 | 华为技术有限公司 | Management method for storage arrays, device and controller |
CN104346291A (en) * | 2013-08-05 | 2015-02-11 | 炬芯(珠海)科技有限公司 | Storage method and storage system for memory |
US9652160B1 (en) * | 2015-11-06 | 2017-05-16 | Datadirect Networks, Inc. | Method and system for data migration between high performance computing entities and a data storage supported by a de-clustered raid (DCR) architecture with I/O activity dynamically controlled based on remaining health of data storage devices |
CN105760553A (en) * | 2016-03-25 | 2016-07-13 | 北京奇虎科技有限公司 | Data management method and device |
CN108089814A (en) * | 2016-11-23 | 2018-05-29 | 中移(苏州)软件技术有限公司 | A kind of date storage method and device |
CN112256193A (en) * | 2020-09-16 | 2021-01-22 | 浙江大华存储科技有限公司 | Method, device and storage medium for improving data security of solid state disk |
CN113362879A (en) * | 2021-04-19 | 2021-09-07 | 浙江大华存储科技有限公司 | Method and device for predicting service life of solid state disk and readable storage medium |
CN113361208A (en) * | 2021-07-02 | 2021-09-07 | 中国科学院空间应用工程与技术中心 | Solid state disk residual life evaluation method based on comprehensive health index |
Also Published As
Publication number | Publication date |
---|---|
CN114489504A (en) | 2022-05-13 |
WO2023138264A1 (en) | 2023-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105637591B (en) | Defect management strategy for NAND flash | |
US8458417B2 (en) | Garbage collection in a storage device | |
US8621328B2 (en) | Wear-focusing of non-volatile memories for improved endurance | |
US10592134B1 (en) | Open block stability scanning | |
US9727244B2 (en) | Expanding effective storage capacity of a data storage system while providing support for address mapping recovery | |
CN111752487B (en) | Data recovery method and device and solid state disk | |
US9619181B2 (en) | Information processing device and method for controlling replacement of semiconductor storage device | |
US10552063B2 (en) | Background mitigation reads in a non-volatile memory system | |
US10489086B1 (en) | Reducing read errors by performing mitigation reads to blocks of non-volatile memory | |
US11853583B2 (en) | Pool-level storage management | |
WO2011153124A1 (en) | Data hardening to compensate for loss of data retention characteristics in a non-volatile memory | |
CN111722793A (en) | Operation method of open channel storage device | |
KR20130105666A (en) | Intra-device data protection in a raid array | |
KR20130114668A (en) | Reconstruct reads in a raid array with dynamic geometries | |
US10204003B2 (en) | Memory device and storage apparatus | |
JP2019003649A (en) | Storage system and method for monitoring memory | |
US20150199152A1 (en) | Method of managing redundant array of independent disks (raid) groups in a solid state disk array | |
US10459839B1 (en) | Accelerating garbage collection of flushed logical erase blocks in non-volatile memory | |
CN112749039A (en) | Method, apparatus and program product for data writing and data recovery | |
CN114489504B (en) | SSD data management method and related components | |
US9983963B2 (en) | System and method for exploiting hard disk drive capacity reserve and extending operating life thereof | |
KR101548452B1 (en) | Method and apparatus for recovering metadata in electronic device based on non-volatile memeory | |
CN107544747B (en) | Wear reverse balancing method and device | |
US11443826B2 (en) | Storage area retirement in a storage device | |
CN113934360B (en) | Multi-storage device lifecycle management system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |