Variable-depth trie index optimization: theory and experimental results

  • Authors:
  • R. Ramesh;A. J. G. Babu;J. Peter Kincaid

  • Affiliations:
  • State Univ. of New York at Buffalo, Buffalo;Univ. of South Florida, Tampa;Army Research Institute, Orlando, FL

  • Venue:
  • ACM Transactions on Database Systems (TODS)
  • Year:
  • 1989

Quantified Score

Hi-index 0.00

Visualization

Abstract

We develop an efficient approach to Trie index optimization. A Trie is a data structure used to index a file having a set of attributes as record identifiers. In the proposed methodology, a file is horizontally partitioned into subsets of records using a Trie index whose depth of indexing is allowed to vary. The retrieval of a record from the file proceeds by “stepping through” the index to identify a subset of records in the file in which a binary search is performed. This paper develops a taxonomy of optimization problems underlying variable-depth Trie index construction. All these problems are solvable in polynomial time, and their characteristics are studied. Exact algorithms and heuristics for their solution are presented. The algorithms are employed in CRES-an expert system for editing written narrative material, developed for the Department of the Navy. CRES uses several large-to-very-large dictionary files for which Trie indexes are constructed using these algorithms. Computational experience with CRES shows that search and retrieval using variable-depth Trie indexes can be as much as six times faster than pure binary search. The space requirements of the Tries are reasonable. The results show that the variable-depth Tries constructed according to the proposed algorithms are viable and efficient for indexing large-to-very-large files by attributes in practical applications.