Extended 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. In this paper, we propose a new scheme for dynamic hashing in which the growth of a file occurs at a rate of t/s per a full expansion, where s and t are given integers and t/s is smaller than two, as compared to a rate of two in linear hashing. (Note that s is used to denote the number of pages of a file before any split occurs in a full expansion, and t is used to denote the number of pages of the file after a full expansion is finished through a number of split operations.) Therefore, extended spiral hashing can maintain more stable performance through file expansions and has much better storage utilization than does linear hashing. Basically, the proposed scheme is based on a modified spiral storage approach, in which the load distribution is uniform after a full expansion. Therefore, extended spiral hashing can also provide better performance than can the original spiral storage approach. Moreover, we have used a modified separator strategy for overflow handling such that retrieval of any data record in extended spiral hashing is upper-bounded by two disk accesses. From our performance analysis and simulation, extended spiral hashing can achieve nearly 96% storage utilization as compared to 78% storage utilization using linear hashing and 88% storage utilization using the spiral storage approach.
hashing access methods dynamic storage allocation file organization file system management