File organization using composite perfect hashing

Perfect hashing refers to hashing with no overflows. We propose and analyze a composite perfect hashing scheme for large external files. The scheme guarantees retrieval of any record in a single disk access. Insertions and deletions are simple, and the file size may vary considerably without adversely affecting the performance. A simple variant of the scheme supports efficient range searches in addition to being a completely dynamic file organization scheme. These advantages are achieved at the cost of a small amount of additional internal storage and increased cost of insertions.

[1]  Per-Åke Larson,et al.  File organization: implementation of a method guaranteeing retrieval in one access , 1984, CACM.

[2]  M. W. Du,et al.  The Study of a New Perfect Hash Scheme , 1983, IEEE Transactions on Software Engineering.

[3]  Witold Litwin,et al.  Linear Hashing: A new Algorithm for Files and Tables Addressing , 1980, ICOD.

[4]  David B. Lomet,et al.  A simple bounded disorder file organization with good performance , 1988, TODS.

[5]  M. V. Ramakrishna Computing the probability of hash table/urn overflow , 1987 .

[6]  Wladyslaw M. Turski,et al.  The external language KLIPA for the URAL-2 digital computer , 1963, CACM.

[7]  Robert L. Perry Attribute Sampling: Tables and Explanations , 1972 .

[8]  William Feller,et al.  An Introduction to Probability Theory and Its Applications , 1967 .

[9]  Thomas J. Sager A polynomial time generator for minimal perfect hash functions , 1985, CACM.

[10]  Harry George Mairson The program complexity of searching a table (data structures, applied combinatorics) , 1984 .

[11]  Per-Åke Larson,et al.  Dynamic hashing , 1978, BIT.

[12]  Nick Cercone,et al.  An Interactive System for Finding Perfect Hash Functions , 1985, IEEE Software.

[13]  Larry Carter,et al.  Universal Classes of Hash Functions , 1979, J. Comput. Syst. Sci..

[14]  M. Ramakrishna Perfect hashing for external files , 1986 .

[15]  Ronald Fagin,et al.  Extendible hashing—a fast access method for dynamic files , 1979, ACM Trans. Database Syst..

[16]  Harry G. Mairson The program complexity of searching a table , 1983, 24th Annual Symposium on Foundations of Computer Science (sfcs 1983).

[17]  M. V. Ramakrishna,et al.  External perfect hashing , 1985, SIGMOD '85.

[18]  Richard J. Cichelli Minimal perfect hash functions made simple , 1980, CACM.

[19]  Per-Åke Larson Analysis of Uniform Hashing , 1983, JACM.

[20]  R. Faure,et al.  Introduction to operations research , 1968 .

[21]  M. V. Ramakrishna,et al.  Analysis of bounded disorder file organization , 1988, PODS.

[22]  Dilip V. Sarwate,et al.  A Note on Universal Classes of Hash Functions , 1980, Inf. Process. Lett..

[23]  David K. Gifford,et al.  The TWA reservation system , 1984, CACM.

[24]  Gaston H. Gonnet,et al.  External hashing with limited internal storage , 1988 .

[25]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[26]  R. Nigel Horspool,et al.  Practical Perfect Hashing , 1985, Comput. J..

[27]  Renzo Sprugnoli,et al.  Perfect hashing functions , 1977, Commun. ACM.

[28]  Combinatorial extreme value distributions , 1959 .

[29]  Nick Cercone,et al.  Minimal and almost minimal perfect hash function search with application to natural language lexicon design , 1983 .

[30]  Feller William,et al.  An Introduction To Probability Theory And Its Applications , 1950 .

[31]  Gerhard Jaeschke Reciprocal hashing: a method for generating minimal perfect hashing functions , 1981, CACM.

[32]  R. F.,et al.  Mathematical Statistics , 1944, Nature.

[33]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .