Patent ID: 8639674

Claim:
A method for managing data, the method including: receiving individually accessible data units, each data unit identified by a respective key value; storing a plurality of sets of blocks of data that comprise a first set of the blocks and a second set of the blocks, the first set of the blocks having a plurality of blocks of data and being generated by compressing a plurality of the data units, the second set of the blocks having one or more blocks of data and being generated by compressing a plurality of data units received after storing the first set of blocks; decompressing the first and second sets of blocks to recover the data units from which their respective blocks were generated; sorting the data units recovered from the first set and the data units recovered from the second set according to an order for key values corresponding to the data units to generate a set of sorted data units; generating a third set of blocks, each of at least some of the blocks in the third set being generated by compressing a plurality of the sorted data units; and providing a screening data structure associated with the stored blocks for determining a possibility that a data unit that includes a given attribute value was included in the data units from which the blocks were generated, wherein the screening data structure determines, for a given attribute value, either that a data unit including the given attribute value was definitely not included, or that a data unit including the given attribute value was possibly included.