Epoch: Efficient Proxy Caching for Database-Backed Web Sites

Many web sites use database systems to manage large amounts of data for their web site programs to answer user requests.  We call these database-backed web sites. For example, the online bookstore Amazon.com keeps its inventory, user profiles, and online transactions in Oracle, a commercial database management system.  With ever-increasing Internet usage, these database-backed web sites face serious challenges due to scalability requirements.

A major technique to address scalability problems on the Web is proxy caching, in which additional programs (called web proxy servers or proxies) are run at the web sites or on the Internet to temporarily store popular data items and to answer user requests using the temporary storage.  Unfortunately, current proxies cache only static web objects, which leads to the insufficiency of proxy caching for database-backed web sites. This is due to the gap between the simple URL-matching style of caching at current proxies and the complex processing logic at database-backed web sites.

To bridge this gap, we propose to add some query processing capability to caching proxies for database-backed web sites. First, we design and implement efficient proxy caching schemes for various kinds of database-backed web sites.  Second, we categorize data freshness/consistency requirements of these web sites and investigate corresponding cache consistency maintenance techniques. 

Publications