Patent ID: 7469241

Claim:
A computer-implemented method for performing a data aggregation operation that aggregates values based on a grouping key, the method comprising: in response to a request for performance of said data aggregation operation, reading data items on which said data aggregation operation operates; for each data item of said data items on which said data aggregation operation operates, determining which partition, of a plurality of partitions in volatile memory, corresponds to the data item; wherein determining which partition corresponds to each data item includes applying a hash function to a key value, of the data item, that corresponds to the grouping key specified in the request; based on the partitions to which the data items correspond, storing entries associated with said data items in said plurality of partitions in said volatile memory; wherein each partition from said plurality of partitions contains entries associated with data items having a key value, for said grouping key specified in said request, that corresponds to said partition; for a first corresponding partition of said plurality of partitions, generating a first hash table to index said first corresponding partition based on said grouping key; for a first data item that corresponds to said first corresponding partition based on said grouping key, said first data item being associated with a first grouping key value for said grouping key: inserting a first entry in said first corresponding partition for said first grouping key value, said first entry including a first measure value for aggregation for said first grouping key value; for a second data item that corresponds to said first corresponding partition based on said grouping key, said second data item having a second measure value and being associated with said first grouping key value for said grouping key: probing said first hash table; based on probing said first hash table, determining that said first corresponding partition already includes an entry for said first grouping key value; in response to determining that said first corresponding partition already includes said entry for said first grouping key value, generating another measure value and storing said another measure value in said first entry.