On the Selection of an Optimal Set of Indexes
- 1 March 1983
- journal article
- Published by Institute of Electrical and Electronics Engineers (IEEE) in IEEE Transactions on Software Engineering
- Vol. SE-9 (2) , 135-143
- https://doi.org/10.1109/tse.1983.236458
Abstract
A problem of considerable interest in the design of a database is the selection of indexes. In this paper, we present a probabilistic model of transactions (queries, updates, insertions, and deletions) to a file. An evaluation function, which is based on the cost saving (in terms of the number of page accesses) attributable to the use of an index set, is then developed. The maximization of this function would yield an optimal set of indexes. Unfortunately, algorithms known to solve this maximization problem require an order of time exponential in the total number of attributes in the file. Consequently, we develop the theoretical basis which leads to an algorithm that obtains a near optimal solution to the index selection problem in polynomial time. The theoretical result consists of showing that the index selection problem can be solved by solving a properly chosen instance of the knapsack problem. A theoretical bound for the amount by which the solution obtained by this algorithm deviates from the true optimum is provided. This result is then interpreted in the light of evidence gathered through experiments.Keywords
This publication has 5 references indexed in Scilit:
- VERGE: A video interactive retrieval enginePublished by Institute of Electrical and Electronics Engineers (IEEE) ,2010
- The difficulty of optimum index selectionACM Transactions on Database Systems, 1978
- The optimal selection of secondary indices for filesInformation Systems, 1975
- The choice of partial inversions and combined indicesInternational Journal of Parallel Programming, 1974
- Organization and maintenance of large ordered indexesActa Informatica, 1972