Patent ID: 8725779

Claim:
A method performed by a computer system comprising at least one processor, the method comprising: defining a plurality of keys, each of the plurality of keys being associated with a key event that is defined at least in part by an occurrence of a user activity; monitoring activity of a population of users; determining, from monitoring activity of the population of users, a count of the key event for each key; determining a significance level of each key in the plurality of keys based at least in part on the count for the key event of each key in the plurality of keys, wherein at least some keys are determined to be significant based on the count for the associated key event exceeding a threshold, and wherein a majority of the plurality of keys are determined to be insignificant based on the count for the associated key event being less than the threshold; storing a data set for each key based on the determined significance level of that key, each data set including the key and the count for the key event of that key; wherein storing the data set includes storing the data set of keys that are determined to be significant in a first memory, and the data set of keys that are determined to be insignificant in a second memory, the first memory being more lossless than the second memory; monitoring the count of the key events for at least the keys that are determined to be insignificant in order to determine when the count for the key event of a given key exceeds the threshold; and in response to determining that the count for the key event of the given key exceeds the threshold, storing the data set for the given key in the first memory, and setting the count for the key event to be within a predetermined margin of accuracy.