Background deduplication of data sets in a memory
First Claim
Patent Images
1. A method comprising:
- storing a plurality of data sets in a memory at different physical locations, each physical location having an associated physical address;
determining that a first data set and a second data set from the plurality of data sets share a common data content using respective first and second hash values;
comparing a first total number of write/erase cycles that have been applied to the first physical address to a second total number of write/erase cycles that have been applied to the second physical address;
andmarking a selected one of the first or second data sets as valid data and the remaining one of the first or second data sets as stale data responsive to the comparison of the respective first and second total numbers of write/erase cycles.
1 Assignment
0 Petitions
Accused Products
Abstract
Apparatus and method for data management in a memory, such as but not limited to a flash memory array. In accordance with some embodiments, a plurality of data sets in a memory are identified as having a common data content and different physical addresses in the memory. A selected one of the data sets is marked as valid data and the remaining data sets are marked as stale data responsive to evaluation of at least one variable parameter associated with the physical addresses at which the data sets are respectively stored.
-
Citations
19 Claims
-
1. A method comprising:
-
storing a plurality of data sets in a memory at different physical locations, each physical location having an associated physical address; determining that a first data set and a second data set from the plurality of data sets share a common data content using respective first and second hash values; comparing a first total number of write/erase cycles that have been applied to the first physical address to a second total number of write/erase cycles that have been applied to the second physical address; and marking a selected one of the first or second data sets as valid data and the remaining one of the first or second data sets as stale data responsive to the comparison of the respective first and second total numbers of write/erase cycles. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
- 8. An apparatus comprising a memory in which a plurality of data blocks are stored at different physical locations therein, and a deduplication processor configured to identify first and second data blocks in the memory having a common data content, to compare a first variable parameter associated with the physical location of the first data block to a second variable parameter associated with the physical location of the second data block, and to select one of the first or second data blocks for retention in the memory and to select the remaining one of the first or second data blocks for jettisoning from the memory responsive to the comparison of the at least one variable parameter for each physical location, the first variable parameter comprising a total number of erasure cycles applied to the first physical location, the second variable parameter comprising a total number of erasure cycles applied to the second physical location.
- 14. A data storage device comprising a main memory and a control circuit adapted to direct data transfer operations between the main memory and a host device, the control circuit further adapted to remove duplicate data sets from the main memory by identifying first and second data sets sharing a common data content and stored at different physical locations within the main memory each having an associated physical address, marking a selected one of the first or second data sets as valid data and the remaining one of the first or second data sets as stale data responsive to a variable parameter associated with each of the respective physical locations, and jettisoning the stale data from the main memory, the variable parameter comprising measured temperatures at the time of writing of the first and second data sets to the different physical locations.
Specification