Bloom filters in a flash memory
First Claim
Patent Images
1. A method for implementing a Bloom filter in a flash memory, the method comprising:
- establishing a Bloom filter in the flash memory, wherein the Bloom filter includes a plurality of pages and wherein all bits in the Bloom filter are initially unset;
storing a record in memory, wherein the memory is separate from the flash memory, the record including a plurality of entries, each entry corresponding to a portion of the Bloom filter;
when one of the plurality of entries in the record is full, identifying bits to be set in the Bloom filter from the full entry;
overwriting the portion of the Bloom filter corresponding to the full entry in the record in order to set the identified bits.
4 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for managing content in a flash memory. A data structure such as a Bloom filter is implemented in flash memory such that updates to the data can be performed by overwriting pages in the memory.
-
Citations
20 Claims
-
1. A method for implementing a Bloom filter in a flash memory, the method comprising:
-
establishing a Bloom filter in the flash memory, wherein the Bloom filter includes a plurality of pages and wherein all bits in the Bloom filter are initially unset; storing a record in memory, wherein the memory is separate from the flash memory, the record including a plurality of entries, each entry corresponding to a portion of the Bloom filter; when one of the plurality of entries in the record is full, identifying bits to be set in the Bloom filter from the full entry; overwriting the portion of the Bloom filter corresponding to the full entry in the record in order to set the identified bits. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method for implementing a Bloom filter in a flash memory, the method comprising:
-
establishing a Bloom filter in the flash memory, wherein the Bloom filter includes a plurality of pages and wherein all bits in the Bloom filter are initially unset; storing a record in memory that is separate from the flash memory, wherein the record is configured to store updates to the Bloom filter in a plurality of entries, each entry corresponding to a portion of the Bloom filter; identifying bits in the record to be set in the Bloom filter from the plurality of entries in a batch update; overwriting the portion of the Bloom filter corresponding to identified bits in the record during a batch update in order to set the identified bits in the Bloom filter. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A method for implementing a data structure in a flash memory, the method comprising:
-
establishing a data structure in the flash memory, wherein the data structure includes a plurality of pages of the flash memory and wherein all bits in the data structure are initially unset; storing a record in memory that is separate from the flash memory, wherein the record is configured to store updates to the data structure in a plurality of entries, each entry corresponding to a portion of the data structure; identifying bits in the record to be set in the data structure from the plurality of entries in a batch update; overwriting the portion of the data structure corresponding to identified bits in the record during a batch update in order to set the identified bits in the Bloom filter. - View Dependent Claims (19, 20)
-
Specification