Multiple-Stage Data Lifetime Management for Storage Devices
First Claim
1. A method of managing data lifetime in a multi-device storage environment comprising:
- at a main controller;
determining an initial set of memory block candidates, including receiving from each of a plurality of storage devices of the multi-device storage environment, information identifying one or more memory block candidates, wherein each memory block candidate of the identified memory block candidates is located in a respective storage device of the plurality of storage devices and has been determined by the respective storage device to be a candidate for a management operation;
determining a set of related memory blocks, related to the initial set of memory block candidates in accordance with predefined groups of memory blocks;
receiving usage information for the initial set of memory block candidates and the set of related memory blocks;
selecting a target group of memory blocks of the predefined groups of memory blocks based on the received usage information for the initial set of memory block candidates and set of related memory blocks; and
initiating performance of the management operation on the selected target group of memory blocks.
5 Assignments
0 Petitions
Accused Products
Abstract
A main controller in a data storage system having multiple storage devices determines an initial set of memory block candidates for data lifetime operations by receiving from each of a plurality of the storage devices information identifying one or more potential memory block candidates, with respective received memory blocks having been classified by respective storage devices as potential candidates. The main controller determines a set of related memory blocks, and, based on received usage information for the candidate memory blocks and the related memory blocks, selects a target group of memory blocks and initiates performance of the data lifetime operations on the memory blocks of the selected target group.
-
Citations
21 Claims
-
1. A method of managing data lifetime in a multi-device storage environment comprising:
-
at a main controller; determining an initial set of memory block candidates, including receiving from each of a plurality of storage devices of the multi-device storage environment, information identifying one or more memory block candidates, wherein each memory block candidate of the identified memory block candidates is located in a respective storage device of the plurality of storage devices and has been determined by the respective storage device to be a candidate for a management operation; determining a set of related memory blocks, related to the initial set of memory block candidates in accordance with predefined groups of memory blocks; receiving usage information for the initial set of memory block candidates and the set of related memory blocks; selecting a target group of memory blocks of the predefined groups of memory blocks based on the received usage information for the initial set of memory block candidates and set of related memory blocks; and initiating performance of the management operation on the selected target group of memory blocks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for managing data lifetime in a multi-device storage environment comprising:
-
a storage device interface for sending commands to and receiving responses from a plurality of storage devices; controller system memory; and one or more processors, the one or more processors configured to execute one or more programs stored in the controller system memory, the one or more programs including instructions for; determining an initial set of memory block candidates, including receiving, via the storage device interface, from each of a plurality of storage devices of the multi-device storage environment, information identifying one or more memory block candidates, wherein each memory block candidate of the identified memory block candidates is located in a respective storage device of the plurality of storage devices and has been determined by the respective storage device to be a candidate for a management operation; determining a set of related memory blocks, related to the initial set of memory block candidates in accordance with predefined groups of memory blocks; receiving, via the storage device interface, usage information for the initial set of memory block candidates and the set of related memory blocks; selecting a target group of memory blocks of the predefined groups of memory blocks based on the received usage information for the initial set of memory block candidates and set of related memory blocks; and initiating performance of the management operation on the selected target group of memory blocks. - View Dependent Claims (18, 19, 20, 21)
-
Specification