US2017192688A1PendingUtilityA1

Lazy deletion of vaults in packed slice storage (pss) and zone slice storage (zss)

Assignee: IBMPriority: Dec 30, 2015Filed: Sep 30, 2016Published: Jul 6, 2017
Est. expiryDec 30, 2035(~9.4 yrs left)· nominal 20-yr term from priority
H03M 13/3761G06F 3/0653G06F 3/0616G06F 3/0604G06F 3/0631G06F 3/0623G06F 3/0608G06F 12/1408G06F 3/0644G06F 3/064H04L 43/16G06F 3/0611H04L 43/0852H04L 43/0888G06F 3/0665G06F 3/0647G06F 3/067G06F 2212/154H03M 13/1515H04L 43/0876G06F 11/1076G06F 3/0659G06F 16/182G06F 3/0652G06F 11/1092G06F 2212/263G06F 16/2246G06F 3/0661G06F 3/0619G06F 12/0684G06F 12/0813G06F 12/0888H04L 67/1097
53
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Methods and systems for compacting a storage structure or file include maintaining a vault byte count for each of a plurality of vaults, where encoded data slices of two or more vaults are stored in at least one common bin file within a storage unit, determining a normalized storage utilization level for the vault, updating a bin file utilization level based on the normalized storage utilization level for each vault and, when the updated bin file utilization level is less than a low bin file utilization threshold level, facilitating compaction of the at least one common bin file. For example, the processing module transfers remaining encoded data slices of other vaults to a new bin file, generates an indicator to indicate that 100% of the new bin file is utilized, and deletes the bin file associated with the encoded data slices of the vault to be deleted.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method of compacting a bin file in a dispersed storage unit, the bin file storing a plurality of vaults, each respective vault of the plurality of vaults storing respective encoded data slices, the method comprising:
 maintaining a respective vault byte counter for each respective vault of the plurality of vaults;   determining a respective normalized storage utilization level for each respective vault of the plurality of vaults using the respective vault byte count for each respective vault of the plurality of vaults;   updating a current bin file utilization level for the bin file based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level; and   compacting the bin file when the updated bin file utilization level is less than a threshold.   
     
     
         2 . The method of  claim 1 , wherein the step of maintaining a respective vault byte counter for each respective vault of the plurality of vaults is based on receiving one of a write slice request and a delete slice request. 
     
     
         3 . The method of  claim 2 , wherein the step of maintaining a respective vault byte counter for each respective vault of the plurality of vaults further includes lowing the respective vault byte counter of the respective vault in response to receiving the delete slice request, the delete slice request corresponding to the respective vault. 
     
     
         4 . The method of  claim 1 , wherein the step of maintaining a respective vault byte counter for each respective vault of the plurality of vaults is based on receiving a delete vault request. 
     
     
         5 . The method of  claim 4 , wherein the step of maintaining a respective vault byte counter for each respective vault of the plurality of vaults further includes lowing the respective vault byte counter of the respective vault in response to receiving the delete vault request, the delete vault request corresponding to the respective vault. 
     
     
         6 . The method of  claim 1 , wherein the step of determining a respective normalized storage utilization level for each respective vault of the plurality of vaults using the respective vault byte count for each respective vault of the plurality of vaults includes determining a sum of the respective vault byte count for each respective vault of the plurality of vaults and dividing the sum of the respective vault byte count for each respective vault of the plurality of vaults by the respective vault byte count of the respective vault of the plurality of vaults. 
     
     
         7 . The method of  claim 1 , wherein the step of updating a current bin file utilization level for the bin file based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level includes retrieving a previous bin file utilization level for the bin file and adjusting the previous bin file utilization level based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level. 
     
     
         8 . The method of  claim 1 , wherein the step of compacting the bin file when the updated bin file utilization level is less than a threshold includes transferring the respective encoded data slices of each respective vault of the plurality of vaults that are not being deleted to a new bin file, generating a 100% bin file utilization level indicator for the new bin file, and deleting the respective encoded data slices of the respective vault of the plurality of vaults that is being deleted. 
     
     
         9 . A dispersed storage unit for compacting a bin file, the dispersed storage unit comprising:
 a communications interface;   a memory; and   a computer processor;   where the memory includes the bin file storing a plurality of vaults, each respective vault of the plurality of vaults storing respective encoded data slices, and instructions for causing the computer processor to:
 maintain a respective vault byte counter for each respective vault of the plurality of vaults; 
 determine a respective normalized storage utilization level for each respective vault of the plurality of vaults using the respective vault byte count for each respective vault of the plurality of vaults; 
 update a current bin file utilization level for the bin file based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level; and 
 compact the bin file when the updated bin file utilization level is less than a threshold. 
   
     
     
         10 . The dispersed storage unit of  claim 9 , wherein the instructions for causing the computer processor to maintain a respective vault byte counter for each respective vault of the plurality of vaults are based on receiving one of a write slice request and a delete slice request. 
     
     
         11 . The dispersed storage unit of  claim 10 , wherein the memory further includes instructions for causing the computer processor to lower the respective vault byte counter of the respective vault in response to receiving the delete slice request, the delete slice request corresponding to the respective vault. 
     
     
         12 . The dispersed storage unit of  claim 9 , wherein the instructions for causing the computer processor to maintain a respective vault byte counter for each respective vault of the plurality of vaults are based on receiving a delete vault request. 
     
     
         13 . The dispersed storage unit of  claim 12 , wherein the memory further includes instructions for causing the computer processor to lower the respective vault byte counter of the respective vault in response to receiving the delete vault request, the delete vault request corresponding to the respective vault. 
     
     
         14 . The dispersed storage unit of  claim 9 , wherein the memory further includes instructions for causing the computer processor to determine a sum of the respective vault byte count for each respective vault of the plurality of vaults and divide the sum of the respective vault byte count for each respective vault of the plurality of vaults by the respective vault byte count of the respective vault of the plurality of vaults. 
     
     
         15 . The dispersed storage unit of  claim 9 , wherein the memory further includes instructions for causing the computer processor to retrieve a previous bin file utilization level for the bin file and adjust the previous bin file utilization level based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level. 
     
     
         16 . The dispersed storage unit of  claim 9 , wherein the memory further includes instructions for causing the computer processor to transfer the respective encoded data slices of each respective vault of the plurality of vaults that are not being deleted to a new bin file, generate a 100% bin file utilization level indicator for the new bin file, and delete the respective encoded data slices of the respective vault of the plurality of vaults that is being deleted. 
     
     
         17 . A dispersed storage network comprising:
 a plurality of dispersed storage units;   at least one of the dispersed storage units including:
 a communications interface; 
 a memory; and 
 a computer processor; 
 where the memory includes a bin file storing a plurality of vaults, each respective vault of the plurality of vaults storing respective encoded data slices, and instructions for causing the computer processor to:
 maintain a respective vault byte counter for each respective vault of the plurality of vaults; 
 determine a respective normalized storage utilization level for each respective vault of the plurality of vaults using the respective vault byte count for each respective vault of the plurality of vaults; 
 update a current bin file utilization level for the bin file based on the respective normalized storage utilization level for each respective vault of the plurality of vaults to produce an updated bin file utilization level; and 
 compact the bin file when the updated bin file utilization level is less than a threshold. 
 
   
     
     
         18 . The dispersed storage network of  claim 17 , wherein the instructions for causing the computer processor to maintain a respective vault byte counter for each respective vault of the plurality of vaults are based on receiving one of a write slice request and a delete slice request. 
     
     
         19 . The dispersed storage network of  claim 18 , wherein the memory further includes instructions for causing the computer processor to lower the respective vault byte counter of the respective vault in response to receiving the delete slice request, the delete slice request corresponding to the respective vault. 
     
     
         20 . The dispersed storage network of  claim 17 , wherein the instructions for causing the computer processor to maintain a respective vault byte counter for each respective vault of the plurality of vaults are based on receiving a delete vault request.

Join the waitlist — get patent alerts

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

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