Linear Spiral Hashing for Expansible Files

The goal of dynamic hashing is to design a function and a file structure that allow the address space allocated to the file to be increased and reduced without reorganizing the whole file. We propose a new scheme for dynamic hashing in which the growth of a file occurs at a rate of n+k/n per full expansion, where n is the number of pages of the file and k is a given integer constant which is smaller than n, as compared to a rate of two in linear hashing. Like linear hashing, the proposed scheme (called linear spiral hashing) requires no index; however, the proposed scheme may or may not add one more physical page, instead of always adding one more page in linear hashing, when a split occurs. Therefore, linear spiral hashing can maintain a more stable performance through the file expansions and have much better storage utilization than linear hashing. From our performance analysis, linear spiral hashing can achieve nearly 97 percent storage utilization as compared to 78 percent storage utilization by using linear hashing, which is also verified by a simulation study.

[1]  Torben U. Zahle,et al.  Cascade Hashing , 1984, VLDB.

[2]  Kotagiri Ramamohanarao,et al.  Recursive linear hashing , 1984, TODS.

[3]  David B. Lomet,et al.  Partial expansions for file organizations with an index , 1987, TODS.

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

[5]  P. Bruce Berra,et al.  Key-sequential access methods for very large files derived from linear hashing , 1989, [1989] Proceedings. Fifth International Conference on Data Engineering.

[6]  Per-Åke Larson,et al.  Performance analysis of linear hashing with partial expansions , 1982, TODS.

[7]  Richard J. Enbody,et al.  Dynamic hashing schemes , 1988, CSUR.

[8]  P. Bruce Berra,et al.  New Order Preserving Access Methods for Very Large Files Derived From Linear Hashing , 1992, IEEE Trans. Knowl. Data Eng..

[9]  Kotagiri Ramamohanarao,et al.  Dynamic Hashing Schemes , 1982, Comput. J..

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

[11]  Haim Mendelson,et al.  Analysis of Extendible Hashing , 1982, IEEE Transactions on Software Engineering.

[12]  James K. Mullin,et al.  Unified Dynamic Hashing , 1984, VLDB.

[13]  Jiang-Hsing Chu,et al.  An Analysis of Spiral Hashing , 1994, Comput. J..

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

[15]  Ekow J. Otoo,et al.  Linearizing the directory growth in order preserving extendible hashing , 1988, Proceedings. Fourth International Conference on Data Engineering.

[16]  David B. Lomet,et al.  Bounded index exponential hashing , 1983, TODS.

[17]  Eugene Veklerov Analysis of dynamic hashing with deferred splitting , 1985, TODS.

[18]  Michel Scholl,et al.  New file organization based on dynamic hashing , 1981, TODS.

[19]  Per-Åke Larson,et al.  Linear Hashing with Partial Expansions , 1980, VLDB.

[20]  Kyoji Kawagoe,et al.  Modified dynamic hashing , 1985, SIGMOD Conference.

[21]  Per-Åke Larson,et al.  Linear hashing with overflow-handling by linear probing , 1985, TODS.

[22]  Per-Åke Larson,et al.  A Single-File Version of Linear Hashing with Partial Expansions , 1982, VLDB.

[23]  Per-Åke Larson,et al.  Linear hashing with separators—a dynamic hashing scheme achieving one-access , 1988, TODS.

[24]  Dan Lester Yahoo! profile of a web database , 1995 .

[25]  James K. Mullin,et al.  Spiral Storage: Efficient Dynamic Hashing with Constant Performance , 1985, Comput. J..

[26]  James K. Mullin Tightly controlled linear hashing without separate overflow storage , 1981, BIT Comput. Sci. Sect..

[27]  G. N.N. Martin,et al.  Spiral Storage: Incrementally Augmentable Hash Addressed Storage , 1979 .

[28]  Klaus Küspert,et al.  On the Use of Extendible Hashing Without Hashing , 1984, Inf. Process. Lett..