US12019893B2ActiveUtilityA1

Storage device pool management based on fragmentation levels

Assignee: WESTERN DIGITAL TECH INCPriority: Jun 28, 2022Filed: Jun 28, 2022Granted: Jun 25, 2024
Est. expiryJun 28, 2042(~15.9 yrs left)· nominal 20-yr term from priority
G06F 3/0688G06F 3/0608G06F 16/1724G06F 3/0635G06F 3/0653G06F 3/0616G06F 3/061G06F 3/0644
60
PatentIndex Score
0
Cited by
23
References
20
Claims

Abstract

Aspects directed towards data storage management are provided. In one aspect, a data storage system receives fragmentation level information from data storage devices, and host data from a host device to be stored in the data storage devices. Based on the received fragmentation level information, a target data storage device is selected from the data storage devices, and the host data is sent to the target data storage device. In another aspect, a data storage device determines threshold conditions that trigger a defragmentation process. For this aspect, a fragmentation level metric indicating a proximity of the data storage device to initiating the defragmentation process is calculated based on the threshold conditions and a current amount of data stored in a non-volatile memory (NVM). The fragmentation level metric is then sent to a storage management device.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A data storage system, comprising:
 a plurality of data storage devices each comprising a non-volatile memory (NVM); and 
 a storage management device configured to:
 receive fragmentation level information comprising fragmentation level metrics from at least two data storage devices of the plurality of data storage devices; 
 determine, for each data storage device of the at least two data storage devices, a frequency change metric indicative of a threshold amount of data that can be written to the respective data storage device before an expected increase in the corresponding fragmentation level metric; 
 receive host data from a host device to be stored in one or more of the plurality of data storage devices; 
 select, based on the fragmentation level information from the at least two data storage devices and the frequency change metrics, a target data storage device from the plurality of data storage devices; and 
 send the host data to the target data storage device. 
 
 
     
     
       2. The data storage system of  claim 1 , wherein the at least two data storage devices have different current fragmentation level metrics, and wherein the storage management device is further configured to:
 identify a subset of the plurality of data storage devices having a highest current fragmentation level metric; and 
 refrain from selecting a data storage device included in the subset as the target data storage device. 
 
     
     
       3. The data storage system of  claim 1 , wherein the at least two data storage devices have different current fragmentation level metrics, and wherein the storage management device is further configured to:
 identify a subset of the plurality of data storage devices having a lowest current fragmentation level metric; and 
 select a data storage device included in the subset as the target data storage device. 
 
     
     
       4. The data storage system of  claim 1 , wherein the plurality of data storage devices have a same fragmentation level metric prior to execution of a first write command and a second write command subsequent to the first write command, and wherein the storage management device is further configured to:
 send the first write command to the target data storage device; and 
 send the second write command to a data storage device of the plurality of data storage devices other than the target data storage device. 
 
     
     
       5. The data storage system of  claim 1 , wherein the storage management device is further configured to:
 determine a timing to request the fragmentation level metric from each of the at least two data storage devices based on the respective frequency change metric. 
 
     
     
       6. The data storage system of  claim 5 , wherein the storage management device is further configured to:
 monitor an amount of data that has been respectively written to each of the at least two data storage devices since a most recent fragmentation level metric request for the respective data storage device; and 
 send a subsequent fragmentation level metric request to each of the at least two data storage devices, wherein each subsequent request is in accordance with the timing to request the fragmentation level metric and based on the monitored amount of data for the respective data storage device. 
 
     
     
       7. The data storage system of  claim 1 , wherein the storage management device is further configured to:
 determine a defragmentation threshold associated with at least one of the at least two data storage devices configured to perform a defragmentation process responsive to a defragmentation level exceeding the defragmentation threshold; and 
 modify the defragmentation threshold associated with the at least one of the at least two data storage devices. 
 
     
     
       8. The data storage system of  claim 7 , wherein the storage management device is further configured to modify the defragmentation threshold associated with the at least one of the at least two data storage devices based on a combined storage capacity of the plurality of data storage devices. 
     
     
       9. The data storage system of  claim 7 , wherein the storage management device is further configured to modify the defragmentation threshold associated with the at least one of the at least two data storage devices based on a historical utilization of the at least one of the at least two data storage devices. 
     
     
       10. A method for use with a data storage system including a storage management device and a plurality of data storage devices each comprising a non-volatile memory (NVM), the method comprising:
 receiving fragmentation level information comprising fragmentation level metrics from at least two data storage devices of the plurality of data storage devices; 
 determining, for each data storage device of the at least two data storage devices, a frequency change metric indicative of a threshold amount of data that can be written to the respective data storage device before an expected increase in the corresponding fragmentation level metric; 
 receiving host data from a host device to be stored in one or more of the plurality of data storage devices; 
 selecting, based on the fragmentation level information from the at least two data storage devices and the frequency change metrics, a target data storage device from the plurality of data storage devices; and 
 sending the host data to the target data storage device. 
 
     
     
       11. The method of  claim 10 , wherein the at least two data storage devices have different current fragmentation level metrics, and wherein the method further includes:
 identifying a subset of the plurality of data storage devices having a highest current fragmentation level metric; and 
 refraining from selecting a data storage device included in the subset as the target data storage device. 
 
     
     
       12. The method of  claim 10 , wherein the at least two data storage devices have different current fragmentation level metrics, and wherein the method further includes:
 identifying a subset of the plurality of data storage devices having a lowest current fragmentation level metric; and 
 selecting a data storage device included in the subset as the target data storage device. 
 
     
     
       13. The method of  claim 10 , wherein the method further includes:
 determining a timing to request the fragmentation level metric from each of the at least two data storage devices based on the respective frequency change metric. 
 
     
     
       14. The method of  claim 13 , wherein the method further includes:
 monitoring an amount of data that has been respectively written to each of the at least two data storage devices since a most recent fragmentation level metric request for the respective data storage device; and 
 sending a subsequent fragmentation level metric request to each of the at least two data storage devices, wherein each subsequent request is in accordance with the timing to request the fragmentation level metric and based on the monitored amount of data for the respective data storage device. 
 
     
     
       15. The method of  claim 10 , wherein the method further includes:
 determining a defragmentation threshold associated with at least one of the at least two data storage devices configured to perform a defragmentation process responsive to a defragmentation level exceeding the defragmentation threshold; and 
 modifying the defragmentation threshold associated with the at least one of the at least two data storage devices. 
 
     
     
       16. The method of  claim 15 , wherein the method further includes modifying the defragmentation threshold associated with the at least one of the at least two data storage devices based on a combined storage capacity of the plurality of data storage devices. 
     
     
       17. The method of  claim 15 , wherein the method further includes modifying the defragmentation threshold associated with the at least one of the at least two data storage devices based on a historical utilization of the at least one of the at least two data storage devices. 
     
     
       18. A data storage system, comprising:
 a plurality of data storage devices each comprising a non-volatile memory (NVM); 
 means for receiving fragmentation level information comprising fragmentation level metrics from at least two data storage devices of the plurality of data storage devices; 
 means for determining, for each of the at least two data storage devices, a frequency change metric indicative of a threshold amount of data that can be written to the respective data storage device before an expected increase in the corresponding fragmentation level metric; 
 means for selecting, based on the fragmentation level information from the at least two data storage devices and the frequency change metrics, a target data storage device from the plurality of data storage devices; and 
 means for sending data to the target data storage device. 
 
     
     
       19. A data storage device, comprising:
 a non-volatile memory (NVM); and 
 one or more processors coupled to the NVM and configured, individually or in combination, to:
 determine threshold conditions that trigger a defragmentation process to be performed in the data storage device; 
 calculate a fragmentation level metric based on the threshold conditions and a current amount of data stored in the NVM, wherein the fragmentation level metric indicates a proximity of the data storage device to initiating the defragmentation process; 
 send the fragmentation level metric to a storage management device; 
 calculate a frequency change metric, wherein the frequency change metric is indicative of a threshold amount of data that can be written to the data storage device before an expected increase in the fragmentation level metric; and 
 send the frequency change metric to the storage management device. 
 
 
     
     
       20. The data storage device of  claim 19 , wherein the one or more processors are further configured, individually or in combination, to store data received from the storage management device in the NVM.

Join the waitlist — get patent alerts

Track US12019893B2 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.