Value complete, column complete, predicate complete

Caching is a proven remedy to enhance scalability and availability of software systems as well as to reduce latency of user requests. In contrast to Web caching where single Web objects are accessed and kept ready somewhere in caches in the user-to-server path, database caching uses full-fledged database management systems as caches, close to application servers at the edge of the Web, to adaptively maintain sets of records from a remote database and to evaluate queries on them. We analyze a new class of approaches to database caching where the extensions of query predicates that are to be evaluated are constructed by constraints in the cache. Starting from the key concept of value completeness, we explore the application of cache constraints and their implications on query evaluation correctness and on controllable cache loading called cache safeness. Furthermore, we identify simple rules for the design of cache groups and their optimization before discussing the use of single cache groups and cache group federations. Finally, we argue that predicate completeness can be used to develop new variants of constraint-based database caching.

[1]  Mark P. Andrews,et al.  Negative Caching of DNS Queries (DNS NCACHE) , 1998, RFC.

[2]  Jonathan Goldstein,et al.  MTCache: Mid-Tier Database Caching for SQL Server , 2004, IEEE Data Eng. Bull..

[3]  Jingren Zhou,et al.  Partially Materialized Views , 2005 .

[4]  Divesh Srivastava,et al.  Answering Queries Using Views. , 1999, PODS 1995.

[5]  Jonathan Goldstein,et al.  MTCache: transparent mid-tier database caching in SQL server , 2004, Proceedings. 20th International Conference on Data Engineering.

[6]  László Böszörményi,et al.  A survey of Web cache replacement strategies , 2003, CSUR.

[7]  Times-Ten Team Mid-tier caching: the TimesTen approach , 2002, SIGMOD '02.

[8]  Divesh Srivastava,et al.  Semantic Data Caching and Replacement , 1996, VLDB.

[9]  Wenwei Xue,et al.  Form-based proxy caching for database-backed web sites: keywords and functions , 2006, The VLDB Journal.

[10]  Theo Härder,et al.  Query Processing in Constraint-Based Database Caches , 2004, IEEE Data Eng. Bull..

[11]  Mohamed Ziauddin,et al.  Materialized Views in Oracle , 1998, VLDB.

[12]  Hamid Pirahesh,et al.  Cache Tables: Paving the Way for an Adaptive Database Cache , 2003, VLDB.

[13]  Divesh Srivastava,et al.  Answering Queries Using Views. , 1999, PODS 1995.

[14]  Sriram Padmanabhan,et al.  DBProxy: a dynamic data cache for web applications , 2003, Proceedings 19th International Conference on Data Engineering (Cat. No.03CH37405).

[15]  Jonathan Goldstein,et al.  Optimizing queries using materialized views: a practical, scalable solution , 2001, SIGMOD '01.

[16]  Arthur M. Keller,et al.  A predicate-based caching scheme for client-server database architectures , 1994, Proceedings of 3rd International Conference on Parallel and Distributed Information Systems.

[17]  Xiang Liu,et al.  Web caching for database applications with Oracle Web Cache , 2002, SIGMOD '02.

[18]  Andreas Bühmann Einen Schritt zurück zum negativen Datenbank-Caching , 2005, BTW.