Patent ID: 8316009

Claim:
A computer-implemented method comprising: employing a processor to facilitate execution of computer-executable instructions that, when executed, cause operations to be performed, comprising: determining an estimate of a number of distinct values in a population data set from a sample data set taken from the population data set; and setting a Chao estimator as a lower bound for the estimate of the number of distinct values in the population data set, the Chao estimator being a function of the estimated number of distinct values in the population data set, a number of distinct values in the sample data set, and a number of values that appear a selected number of times in the sample data set, the selected number of times being greater than one, the determining including: determining whether a number of duplicates in the sample data is greater than a first threshold amount; determining that the estimate of the number of distinct values in the population data set is equal to the number of distinct values in the sample data set when it is determined that the number of duplicates in the sample data is greater than the first threshold amount; determining whether a number of duplicates in the sample data is less than a second threshold amount; determining the estimate of the number of the distinct values in the population data set by linearly scaling the number of duplicates in the sample data when it is determined that the number of duplicates in the sample data is less than the second threshold amount; and determining the estimate of the number of the distinct values in the population data set by non-linearly scaling the number of duplicates in the sample data when the number of duplicates in the sample data is more than the second threshold amount and less than the first threshold amount, and the setting including resetting the estimate of the number of the distinct values in the population data set to the Chao estimator when the Chao estimator is greater than the estimate of the number of the distinct values in the population data set.