DMTCS Proceedings, 23rd Intern. Meeting on Probabilistic, Combinatorial, and Asymptotic Methods for the Analysis of Algorithms (AofA'12)

Font Size:  Small  Medium  Large

Data Streams as Random Permutations: the Distinct Element Problem

Ahmed Helmi, Jérémie Lumbroso, Conrado Martínez, Alfredo Viola


In this paper, we show that data streams can sometimes usefully be studied as random permutations. This simple observation allows a wealth of classical and recent results from combinatorics to be recycled, with minimal effort, as estimators for various statistics over data streams. We illustrate this by introducing Recordinality, an algorithm which estimates the number of distinct elements in a stream by counting the number of k-records occurring in it. The algorithm has a score of interesting properties, such as providing a random sample of the set underlying the stream. To the best of our knowledge, a modified version of Recordinality is the first cardinality estimation algorithm which, in the random-order model, uses neither sampling nor hashing.

Full Text: PostScript PDF

Valid XHTML 1.0 Transitional