ACM Transactions on Database Systems (TODS)
Linear hashing with overflow-handling by linear probing
ACM Transactions on Database Systems (TODS)
The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Performance analysis of linear hashing with partial expansions
ACM Transactions on Database Systems (TODS)
Extendible hashing—a fast access method for dynamic files
ACM Transactions on Database Systems (TODS)
Spiral Storage: Incrementally Augmentable Hash Addressed Storage
Spiral Storage: Incrementally Augmentable Hash Addressed Storage
Performance comparison of extendible hashing and linear hashing techniques
SIGSMALL '90 Proceedings of the 1990 ACM SIGSMALL/PC symposium on Small systems
A compendium of key search references
ACM SIGIR Forum
Performance comparison of extendible hashing and linear hashing techniques
ACM SIGSMALL/PC Notes
Fast search in main memory databases
SIGMOD '92 Proceedings of the 1992 ACM SIGMOD international conference on Management of data
Persistent Caching: An Implementation Technique for Complex Objects with Object Identity
IEEE Transactions on Software Engineering
LH: Linear Hashing for distributed files
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
Distributed file organization with scalable cost/performance
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
LH*—a scalable, distributed data structure
ACM Transactions on Database Systems (TODS)
Mnesia - A Distributed Robust DBMS for Telecommunications Applications
PADL '99 Proceedings of the First International Workshop on Practical Aspects of Declarative Languages
An Implementation for Nested Relational Databases
VLDB '88 Proceedings of the 14th International Conference on Very Large Data Bases
A Performance Evaluation of OID Mapping Techniques
VLDB '95 Proceedings of the 21th International Conference on Very Large Data Bases
Tiered Vectors: Efficient Dynamic Arrays for Rank-Based Sequences
WADS '99 Proceedings of the 6th International Workshop on Algorithms and Data Structures
Performance Analysis of Database Systems
Performance Evaluation: Origins and Directions
Platypus: Design and Implementation of a Flexible High Performance Object Store
POS-9 Revised Papers from the 9th International Workshop on Persistent Object Systems
Hash-based labeling techniques for storage scaling
The VLDB Journal — The International Journal on Very Large Data Bases
Segmented hash: an efficient hash table implementation for high performance networking subsystems
Proceedings of the 2005 ACM symposium on Architecture for networking and communications systems
Implementing subscripted identifiers in scientific databases
SSDBM'1990 Proceedings of the 5th international conference on Statistical and Scientific Database Management
A programmable message classification engine for session initiation protocol (SIP)
Proceedings of the 3rd ACM/IEEE Symposium on Architecture for networking and communications systems
Universal hash functions for an infinite universe and hash trees
Information Processing Letters
Algorithms for memory hierarchies: advanced lectures
Algorithms for memory hierarchies: advanced lectures
Proceedings of the twenty-ninth ACM SIGMOD-SIGACT-SIGART symposium on Principles of database systems
SIP server performance on multicore systems
IBM Journal of Research and Development
Divide and discriminate: algorithm for deterministic and fast hash lookups
Proceedings of the 5th ACM/IEEE Symposium on Architectures for Networking and Communications Systems
Bulk loading a linear hash file
DaWaK'06 Proceedings of the 8th international conference on Data Warehousing and Knowledge Discovery
LHlf: lock-free linear hashing (poster paper)
Proceedings of the 17th ACM SIGPLAN symposium on Principles and Practice of Parallel Programming
Hi-index | 48.22 |
Linear hashing and spiral storage are two dynamic hashing schemes originally designed for external files. This paper shows how to adapt these two methods for hash tables stored in main memory. The necessary data structures and algorithms are described, the expected performance is analyzed mathematically, and actual execution times are obtained and compared with alternative techniques. Linear hashing is found to be both faster and easier to implement than spiral storage. Two alternative techniques are considered: a simple unbalanced binary tree and double hashing with periodic rehashing into a larger table. The retrieval time of linear hashing is similar to double hashing and substantially faster than a binary tree, except for very small trees. The loading times of double hashing (with periodic reorganization), a binary tree, and linear hashing are similar. Overall, linear hashing is a simple and efficient technique for applications where the cardinality of the key set is not known in advance.