Cache investment
- 1 December 2000
- journal article
- Published by Association for Computing Machinery (ACM) in ACM Transactions on Database Systems
- Vol. 25 (4) , 517-558
- https://doi.org/10.1145/377674.377677
Abstract
Emerging distributed query-processing systems support flexible execution strategies in which each query can be run using a combination of data shipping and query shipping. As in any distributed environment, these systems can obtain tremendous performance and availability benefits by employing dynamic data caching. When flexible execution and dynamic caching are combined, however, a circular dependency arises: Caching occurs as a by-product of query operator placement, but query operator placement decisions are based on (cached) data location. The practical impact of this dependency is that query optimization decisions that appear valid on a per-query basis can actually cause suboptimal performance for all queries in the long run. To address this problem, we developed Cache Investment - a novel approach for integrating query optimization and data placement that looks beyond the performance of a single query. Cache Investment sometimes intentionally generates a “suboptimal” plan for a particular query in the interest of effecting a better data placement for subsequent queries. Cache Investment can be integrated into a distributed database system without changing the internals of the query optimizer. In this paper, we propose Cache Investment mechanisms and policies and analyze their performance. The analysis uses results from both an implementation on the SHORE storage manager and a detailed simulation model. Our results show that Cache Investment can significantly improve the overall performance of a system and demonstrate the trade-offs among various alternative policies.Keywords
This publication has 22 references indexed in Scilit:
- Integrated document caching and prefetching in storage hierarchies based on Markov-chain predictionsThe VLDB Journal, 1998
- SAP R/3 (tutorial)ACM SIGMOD Record, 1998
- Advanced data processing in KRISYS: modeling concepts, implementation techniques, and client/server issuesThe VLDB Journal, 1998
- Data partitioning and load balancing in parallel disk systemsThe VLDB Journal, 1998
- Transactional client-server cache consistencyACM Transactions on Database Systems, 1997
- Highly concurrent cache consistency for indices in client-server database systemsACM SIGMOD Record, 1997
- Mariposa: a wide-area distributed database systemThe VLDB Journal, 1996
- Performance analysis of several back-end database architecturesACM Transactions on Database Systems, 1986
- Principles of database buffer managementACM Transactions on Database Systems, 1984
- Approximating block accesses in database organizationsCommunications of the ACM, 1977