De-duplication techniques using NAND flash based content addressable memory
First Claim
1. A method of operating a non-volatile memory system, comprising:
- storing a plurality of data sets in a first non-volatile memory section of the system;
for each of the data sets, storing a corresponding signature in a search array, where for each of the data sets the signature is derived from the corresponding data set and is of a smaller size, wherein the search array is of NAND type architecture and the signatures are stored therein oriented along the search array'"'"'s bit lines;
maintaining by the memory system of a correspondence between the location at which the data sets are stored in the first non-volatile memory section and the location at which the corresponding signatures are stored in the search array;
receiving a first signature;
biasing the word lines of the search array according to the first signature; and
determining whether any of the bit lines of the search array conduct in response to said biasing of the word lines.
2 Assignments
0 Petitions
Accused Products
Abstract
A NAND Flash based content addressable memory (CAM) is used for a key-value addressed storage drive. The device can use a standard transport protocol such as PCI-E, SAS, SATA, eMMC, SCSI, and so on. A host writes a key-value pair to the drive, where the drive writes the keys along bit lines of a CAM NAND portion of the drive and stores the value in the drive. The drive then maintains a table linking the keys to location of the value. In a read process, the host provides a key to drive, which then broadcasts down the word lines of blocks storing the keys. Based on any matching bit lines, the tables can then be used to retrieve and supply the corresponding data to the host. This arrangement can be applied to de-duplication: for data sets stored in a primary data storage section, corresponding data keys can be generated and store in search NAND. A received key, rather from external to the system or internally generated, can then be compared against the search NAND. The system can be applied to both in-line and off-line de-duplication.
-
Citations
35 Claims
-
1. A method of operating a non-volatile memory system, comprising:
-
storing a plurality of data sets in a first non-volatile memory section of the system; for each of the data sets, storing a corresponding signature in a search array, where for each of the data sets the signature is derived from the corresponding data set and is of a smaller size, wherein the search array is of NAND type architecture and the signatures are stored therein oriented along the search array'"'"'s bit lines; maintaining by the memory system of a correspondence between the location at which the data sets are stored in the first non-volatile memory section and the location at which the corresponding signatures are stored in the search array; receiving a first signature; biasing the word lines of the search array according to the first signature; and determining whether any of the bit lines of the search array conduct in response to said biasing of the word lines. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35)
-
Specification