Abstract
A Bloom filter is a space efficient structure for storing static sets, where the space efficiency is gained at the expense of a small probability of false-positives. A Bloomier filter generalizes a Bloom filter to compactly store a function with a static support. In this article we give a simple construction of a Bloomier filter. The construction is linear in space and requires constant time to evaluate. The creation of our Bloomier filter takes linear time which is faster than the existing construction. We show how one can improve the space utilization further at the cost of increasing the time for creating the data structure.
Keywords
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Bloom, B.: Space/time tradeoffs in hash coding with allowable errors. Comm. of the ACM 13, 422–426 (1970)
Bollobás, B.: The evolution of random graphs. Trans. Amer. Math. Soc. 286, 257–274 (1984)
Broder, A., Mitzenmacher, M.: Network applications of Bloom filters: a survey, Allerton (2002)
Byers, J., Considine, J., Mitzenmacher, M.: Informed content delivery over adaptive overlay networks. In: Proc. ACM SIGCOMM 2002. Comp. Communication Review, vol. 34(4), pp. 47–60 (2002)
Calkin, N.J.: Dependent sets of constant weight binary vectors. Combinatorics, Probability and Computing 6(3), 263–271 (1997)
Chazelle, B., Kilian, J., Rubinfeld, R., Tal, A.: The Bloomier filter: an efficient data structure for static support lookup tables. In: Proc. of the 15th Annual ACM-SIAM Symp. on Discrete Algorithms (SODA 2004), pp. 30–39 (2004)
Charles, D., Chellapilla, K.: Bloomier Filters: A second look (extended version) (2008) arXiv:0807.0928
Cohen, S., Matias, Y.: Spectral Bloom filters. In: ACM SIGMOD (2003)
Czech, Z., Havas, G., Majewski, B.S.: An optimal algorithm for generating minimal perfect hash functions. Information Processing Letters 43(5), 257–264 (1992)
Czech, Z., Havas, G., Majewski, B.S., Wormald, N.C.: Graphs, hypergraphs and hashing. In: van Leeuwen, J. (ed.) WG 1993. LNCS, vol. 790, pp. 153–165. Springer, Heidelberg (1994)
Dietzfelbinger, M., Pagh, R.: Succinct Data Structures for Retrieval and Approximate Membership. In: ICALP (to appear, 2008)
Erdős, P., Rényi, A.: On the evolution of random graphs. Publ. Math. Inst. Hungar. Acad. Sci. 5, 17–61 (1960)
Fan, L., Cao, P., Almeida, J., Broder, A.: Summary cache: a scalable wide-area web cache sharing protocol. IEEE/ACM Transactions on Networking 8, 281–293 (2000)
Fang, M., Shivakumar, N., Garcia-Molina, H., Motwani, R., Ullman, J.: Computing iceberg queries efficiently. In: Proc. 24th Int. Conf. on VLDB, pp. 299–310 (1998)
Geller, D., Kra, I., Popescu, S., Simanca, S.: On circulant matrices (manuscript), http://www.math.sunysb.edu/~sorin
Gremillion, L.L.: Designing a Bloom filter for differential file access. Comm. of the ACM 25, 600–604 (1982)
Mitzenmacher, M.: Compressed Bloom filters. IEEE Transactions on Networking 10 (2002)
Rhea, S.C., Kubiatowicz, J.: Proabilistic location and routing. In: Proceedings of INFOCOMM (2002)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Charles, D., Chellapilla, K. (2008). Bloomier Filters: A Second Look. In: Halperin, D., Mehlhorn, K. (eds) Algorithms - ESA 2008. ESA 2008. Lecture Notes in Computer Science, vol 5193. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87744-8_22
Download citation
DOI: https://doi.org/10.1007/978-3-540-87744-8_22
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-87743-1
Online ISBN: 978-3-540-87744-8
eBook Packages: Computer ScienceComputer Science (R0)