1. A computer implemented method for storing data items, the computer implemented method comprising: computing a plurality of hash functions of data values in a data item; determining a corresponding memory location for one of the plurality of hash functions of data values in the data item; storing the data item in the memory location, wherein each memory location stores a plurality of stored data items; storing a key portion of all data items contiguously within the memory location; and storing a payload portion of all data items contiguously within the memory location.