Advertisement

Analysis of a universal class of hash functions

  • George Markowsky
  • J. Lawrence Carter
  • Mark N. Wegman
Communications
Part of the Lecture Notes in Computer Science book series (LNCS, volume 64)

Abstract

In this paper we use linear algebraic methods to analyze the performance of several classes of hash functions, including the class H2 presented by Carter and Wegman [2]. Suppose H is a suitable class, the hash functions in H map A to B, S is any subset of A whose size is equal to that of B, and x is any element of A. We show that the probability of choosing a function from H which maps x to the same value as more than t other elements of S is no greater than min (1/t2, 11/t4).

Consider a database storage and retrieval system implemented using hashing and a linked list collision resolution strategy. A corollary of the main result is that the probability that the system would perform more than t times more slowly than expected is no greater than min(1/t2, 11/t4). The "performance" being considered can be either the number of memory references required to process any individual request or the number required to process an arbitrary sequence of requests.

Notice that these results do not assume that the requests to the database are random or uniformly distributed. Instead, the averaging is done over the possible choices of the actual hash function from H. Since the system designer can be sure that this choice is made randomly, the probabilities given hold for any input.

It is also shown that the bound on poor performance when balanced trees are used in place of linked lists is approximately min (1/(4t), 11/(16t)). The formulas are generalized to any size S.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    Aho, A. V., Hopcroft, J. E., and Ullman, J. D., The Design and Analysis of Computer Algorithms, Addison-Wesley, Reading Mass. (1974).Google Scholar
  2. [2]
    Carter, J. L. and Wegman M. N., "Universal Classes of Hash Functions," Proceedings of Ninth Annual SIGACT Conference May, 1977.Google Scholar
  3. [3]
    Feller, W., An Introduction to Probability Theory and Its Applications, John Wiley, New York (1957).Google Scholar
  4. [4]
    Naylor, A. W. and G. R. Sell, Linear Operator Theory, Holt, Rinehart & Winston, New York (1971).Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1978

Authors and Affiliations

  • George Markowsky
    • 1
  • J. Lawrence Carter
    • 1
  • Mark N. Wegman
    • 1
  1. 1.Computer Sciences DepartmentIBM Thomas J. Watson Research CenterYorktown Heights

Personalised recommendations