Concurrency and Trie Hashing

W. Litwin, Y. Sagiv, K. Vidyasankar*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

4 Scopus citations

Abstract

The Trie Hashing (TH), defined by Litwin, is one of the fastest access methods for dynamic and ordered files. The hashing function is defined in terms of a trie, which is basically a binary tree where a character string is associated implicitly with each node. This string is compared with a prefix of the given key in the search process, and depending on the result either the left or the right child is chosen as the next node to visit. The leaf nodes point to buckets which contain the records. The buckets are on a disk, whereas the trie itself is in the core memory. In this paper we consider concurrent execution of the TH operations. In addition to the usual search, insertion and deletion operations, we also include range queries among the concurrent operations. Our algorithm locks only leaf nodes and at most two nodes need to be locked simultaneously by any operation regardless of the number of buckets being accessed. The modification required in the basic data structure in order to accommodate concurrent operations is very minor.

Original languageEnglish
Pages (from-to)597-614
Number of pages18
JournalActa Informatica
Volume26
Issue number7
DOIs
StatePublished - Sep 1989

Fingerprint

Dive into the research topics of 'Concurrency and Trie Hashing'. Together they form a unique fingerprint.

Cite this