Back to Search Start Over

Transactional Consistency and Automatic Management in an Application Data Cache

Authors :
Ports, Dan R. K.
Clements, Austin T.
Zhang, Irene
Madden, Samuel R.
Liskov, Barbara H.
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Madden, Samuel R.
Ports, Dan R. K.
Clements, Austin T.
Zhang, Irene
Liskov, Barbara H.
Source :
MIT web domain
Publication Year :
2010
Publisher :
USENIX Association, 2010.

Abstract

http://www.usenix.org/events/osdi10/tech/techAbstracts.html#Ports<br />Distributed in-memory application data caches like memcached are a popular solution for scaling database-driven web sites. These systems are easy to add to existing deployments, and increase performance significantly by reducing load on both the database and application servers. Unfortunately, such caches do not integrate well with the database or the application. They cannot maintain transactional consistency across the entire system, violating the isolation properties of the underlying database. They leave the application responsible for locating data in the cache and keeping it up to date, a frequent source of application complexity and programming errors. Addressing both of these problems, we introduce a transactional cache, TxCache, with a simple programming model. TxCache ensures that any data seen within a transaction, whether it comes from the cache or the database, reflects a slightly stale but consistent snapshot of the database. TxCache makes it easy to add caching to an application by simply designating functions as cacheable; it automatically caches their results, and invalidates the cached data as the underlying database changes. Our experiments found that adding TxCache increased the throughput of a web application by up to 5.2×, only slightly less than a non-transactional cache, showing that consistency does not have to come at the price of performance.

Details

Language :
English
Database :
OpenAIRE
Journal :
MIT web domain
Accession number :
edsair.od........88..e71cceb6a2cdd18962b757c48556c0a8