Generalizing Database Access Methods

Efficient implementation of access methods is crucial for many database sys tems. Today, database systems are increasingly being employed to support new applications involving multi -dimensional data. A large variety of specialized access methods have been developed to solve specific problems. These specialized access methods are usually hand-coded from scratc h. The effort required to implement and maintain such data structures is high. As an alternative t o developing new data structures from scratch, some researchers have tried to simplify sea rch tree technology by generalization. This thesis generalizes access methods at multiple levels, starting wi h hierarchical search-tree access methods. The basic logic and commonalities among different database sea rch trees are explored. A generalized search tree is built and a generalized class libr ary is created including a small set of specialized components. Specific search trees can be built significantly faster than using the traditional approach, using the generalized model and selecting components f rom he library. This work attempts to start a taxonomy for secondary-memory data str uctures, which is used both to classify functionality and reuse implementation. It is simila r to the taxonomy provided by Leda/STL in C++ for primary-memory data structures. Example tree file s tructures are also developed and performance experiments on these file structures demonstrate the f easibility of the generalization approach to achieve efficient implementation of search-tr ee access methods.