Extending ssd longevity
Abstract
A storage appliance includes a first SSD, a second SSD, and a controller. The controller is able to calculate a first utilization parameter of the first SSD and a second utilization parameter of the second SSD. If the first utilization parameter is less than a threshold and the second utilization parameter exceeds the threshold, the controller identifies a data range stored on the first SSD to be removed. The removal of the data range from the first SSD causes the first utilization parameter to exceed the threshold. The controller then migrates the data range from the first SSD to the second SSD.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A storage appliance comprising:
a first solid state drive (SSD) and a second SSD, each configured to store data; and a controller configured to:
calculate a value of a first utilization parameter of the first SSD and determine if the value satisfies a threshold,
identify a data range of data stored on the first SSD to be removed, and
increase spare area in the first SSD by migrating the data corresponding to the identified data range from the first SSD to the second SSD,
wherein the migrating of the data causes the value of first utilization parameter to change and satisfy the threshold.
2 . The storage appliance of claim 1 , wherein,
the first utilization parameter is a first effective over provisioning parameter.
3 . The storage appliance of claim 1 , the controller further configured to:
calculate a utilization parameter for each of one or more additional SSDs including the second SSD; and select one or more of the additional SSDs to which to migrate the data corresponding to the identified data range from the first SSD, based on the calculated utilization parameter for each of the one or more additional SSDs.
4 . The storage appliance of claim 3 , the controller is further configured to:
determine, based on the calculated utilization parameter for the second SSD, a first amount of data the second SSD can accept; migrate the determined first amount of data to the second SSD; determine, based on the calculated utilization parameter of a third SSD of the one or more additional SSDs, a second amount of data that the third SSD can accept, wherein a sum of the first amount of data and the second amount of data is less than or equal to an amount of the data of the identified data range; and migrate the determined second amount of data to the third SSD.
5 . The storage appliance of claim 4 , wherein the controller is further configured to:
calculate a second utilization parameter of the first SSD excluding the data corresponding to the identified data range; calculate a revised utilization parameter for the second SSD including the first amount of data and the third SSD including the second amount of data; and calculate a standard deviation of the utilization parameters of each of the one or more additional SSDs, including the second utilization parameter and the revised utilization parameters.
6 . The storage appliance of claim 5 , wherein if the standard deviation is below a predetermined value, the controller is configured to:
migrate the data corresponding to the first amount of data from the first SSD to the second SSD and the data corresponding to the second amount of data from the first SSD to the third SSD.
7 . The storage appliance of claim 1 , further comprising an adapter configured to allow a host exposing a virtual disk to communicate data to the first SSD and one or more additional SSDs including the second SSD.
8 . The storage appliance of claim 1 , further comprising a mapping table configured to record a location of the stored data.
9 . The storage appliance of claim 8 , wherein the controller is further configured to determine, using the mapping table, the location of the data corresponding to the identified data range to be removed from the first SSD.
10 . The storage appliance of claim 9 , wherein the controller is further configured to calculate the value of the first utilization parameter by querying the mapping table.
11 . The storage appliance of claim 10 , wherein the controller is configured to update the mapping table with one or more new locations of the data corresponding to the identified data range migrated from the first SSD to one or more additional SSDs including the second SSD.
12 . The storage appliance of claim 1 , wherein the controller is configured to migrate the data corresponding to the identified data range from the first SSD to one or more unutilized regions of one or more additional SSDs including the second SSD.
13 . The storage appliance of claim 1 , wherein the controller is configured to migrate the data corresponding to the identified data range from the first SSD to two or more unutilized regions of the second SSD.
14 . The storage appliance of claim 1 , wherein the controller is configured to determine a smallest data range of data which can be migrated from the first SSD to cause the value of the first utilization parameter to satisfy the threshold.
15 . A method of balancing the utilization among a plurality of solid state drives (SSDs) in a storage appliance, the method comprising:
calculating, at a controller, a value of a first utilization parameter of a first SSD; determining if the value satisfies a threshold; identifying a data range of data stored on the first SSD to be removed; and increasing spare area in the first SSD by migrating the data corresponding to the identified data range from the first SSD to a second SSD; wherein the migrating of the data causes the value of the first utilization parameter to change and satisfy the threshold.
16 . The method of claim 15 , wherein calculating the value of the first utilization parameter comprises calculating an effective over provisioning parameter.
17 . The method of claim 16 , wherein calculating the value of the first utilization parameter comprises consulting a mapping table to determine utilization between a first logical block addressing (LBA) and a second LBA corresponding to the first SSD.
18 . The method of claim 17 , further comprising
calculating a utilization parameter for each of one or more additional SSDs including the second SSD; and selecting one or more of the additional SSDs to which to migrate the data corresponding to the identified data range from the first SSD, based on the calculated utilization parameters for each of the one or more additional SSDs.
19 . The method of claim 18 , the method further comprising:
comparing the calculated utilization parameter for each of the one or more additional SSDs to the threshold; determining a subset of SSDs from the one or more additional SSDs for which the calculated utilization parameter satisfies the threshold; and selecting, from the subset of SSDs, an SSD with a minimum utilization parameter.
20 . The method of claim 19 , further comprising determining if a value of the utilization parameter of the SSD with the minimum utilization parameter will satisfy the threshold after receiving the data corresponding to the identified data range.Join the waitlist — get patent alerts
Track US2021081116A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.