English

Don't Trash your Intermediate Results, Cache 'em

Databases 2007-05-23 v1

Abstract

In data warehouse and data mart systems, queries often take a long time to execute due to their complex nature. Query response times can be greatly improved by caching final/intermediate results of previous queries, and using them to answer later queries. In this paper we describe a caching system called Exchequer which incorporates several novel features including optimization aware cache maintenance and the use of a cache aware optimizer. In contrast, in existing work, the module that makes cost-benefit decisions is part of the cache manager and works independent of the optimizer which essentially reconsiders these decisions while finding the best plan for a query. In our work, the optimizer takes the decisions for the cache manager. Furthermore, existing approaches are either restricted to cube (slice/point) queries, or cache just the query results. On the other hand, our work is extens ible and in fact presents a data-model independent framework and algorithm. Our experimental results attest to the efficacy of our cache management techniques and show that over a wide range of parameters (a) Exchequer's query response times are lower by more than 30% compared to the best performing competitor, and (b) Exchequer can deliver the same response time as its competitor with just one tenth of the cache size.

Keywords

Cite

@article{arxiv.cs/0003005,
  title  = {Don't Trash your Intermediate Results, Cache 'em},
  author = {Prasan Roy and Krithi Ramamritham and S. Seshadri and Pradeep Shenoy and S. Sudarshan},
  journal= {arXiv preprint arXiv:cs/0003005},
  year   = {2007}
}

Comments

22 pages, 4 figures