External Perfect Hashing
In this chapter, we give some theoretical and experimental results for the most popular practical algorithms for constructing perfect hashing functions, suitable for key sets ranging in size from very small to very large ones, i.e. in the order of millions. These algorithms are used for a variety of applications such as in DBMSs, retrieval systems and file managers, as well as in compilers, natural language applications, hypermedia and hypertext to provide rapid access to internal and external data collections.
KeywordsHash Function Main Memory Hash Table Dependency Graph Secondary Memory
Unable to display preview. Download preview PDF.
- Chang, C.C., Kowng, H.C., and Wu, T.C. (1991). A Refinement of a Compression-oriented Addressing Scheme. BIT, 33(4):530–535.Google Scholar
- Dietzfelbinger, M., Karlin, A., Mehlhorn, K., Meyer auf der Heide, F., Rohnhert, H., and Tarjan, R. (1998). Dynamic Perfect Hashing-Upper and Lower Bounds. SIAM Journal on Computing, 24(4):738–761.Google Scholar
- Fox, E., Chen, Q., and Heath, L. (1992b). A Faster Algorithm for Constructing Minimal Perfect Hash Functions. In Proceedings of 15 th ACM SIGIR Conference on Research and Development in Information Retrieval, pages 266–273.Google Scholar
- Fredman, M., Komlos, J., and Szemeredi, E. (1982). Storing a Sparse Table with O(1) Worst Case Access Time. In Proceedings of the 23 rd IEEE Symposium on Foundations of Computer Science, pages 165–168.Google Scholar
- Gonnet, G. and Larson, P.A. (1982). External Hashing with Limited Internal Storage. In Proceedings of the 1 st ACM Symposium on Principles of Database Systems, pages 256–261.Google Scholar
- Knuth, D. (1973). The Art of Computer Programming, Vol.3: Sorting and Searching. Addison-Wesley.Google Scholar
- Larson, P.A. and Ramakrishna, M. (1985). External Perfect Hashing. In Proceedings of ACM SIGMOD Conference on Management of Data, pages 190–200.Google Scholar
- Ramakrishna, M. (1986). Perfect Hashing for External Files. Ph.D. Dissertation, Technical report CS-86-25, Department of Computer Science, University of Waterloo, Canada.Google Scholar
- Ramakrishna, M. and Portice, G. (1991). Perfect Hashing Functions for Hardware Applications. In Proceedings of the 7 th IEEE International Conference on Data Engineering, pages 464–470.Google Scholar