Query optimization in a memory-resident domain relational calculus database system
- 1 March 1990
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Database Systems
- Vol. 15 (1) , 67-95
- https://doi.org/10.1145/77643.77646
Abstract
We present techniques for optimizing queries in memory-resident database systems. Optimization techniques in memory-resident database systems differ significantly from those in conventional disk-resident database systems. In this paper we address the following aspects of query optimization in such systems and present specific solutions for them: (1) a new approach to developing a CPU-intensive cost model; (2) new optimization strategies for main-memory query processing; (3) new insight into join algorithms and access structures that take advantage of memory residency of data; and (4) the effect of the operating system's scheduling algorithm on the memory-residency assumption. We present an interesting result that a major cost of processing queries in memory-resident database systems is incurred by evaluation of predicates. We discuss optimization techniques using the Office-by-Example (OBE) that has been under development at IBM Research. We also present the results of performance measurements, which prove to be excellent in the current state of the art. Despite recent work on memory-resident database systems, query optimization aspects in these systems have not been well studied. We believe this paper opens the issues of query optimization in memory-resident database systems and presents practical solutions to them.Keywords
This publication has 26 references indexed in Scilit:
- Estimating the cost of updates in a relational databaseACM Transactions on Database Systems, 1985
- On the optimal nesting order for computing N -relational joinsACM Transactions on Database Systems, 1984
- Query Optimization in Database SystemsACM Computing Surveys, 1984
- On estimating block accesses in database organizationsCommunications of the ACM, 1983
- Estimating block accesses in database organizationsCommunications of the ACM, 1983
- On optimizing an SQL-like nested queryACM Transactions on Database Systems, 1982
- The Recovery Manager of the System R Database ManagerACM Computing Surveys, 1981
- The design and implementation of INGRESACM Transactions on Database Systems, 1976
- System RACM Transactions on Database Systems, 1976
- Optimizing the performance of a relational algebra database interfaceCommunications of the ACM, 1975