Application-level caching with transactional consistency
Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2012.
Main Author: | |
---|---|
Other Authors: | |
Format: | Thesis |
Language: | eng |
Published: |
Massachusetts Institute of Technology
2012
|
Subjects: | |
Online Access: | http://hdl.handle.net/1721.1/75448 |
_version_ | 1826207206851215360 |
---|---|
author | Ports, Dan R. K. (Dan Robert Kenneth) |
author2 | Barbara H. Liskov. |
author_facet | Barbara H. Liskov. Ports, Dan R. K. (Dan Robert Kenneth) |
author_sort | Ports, Dan R. K. (Dan Robert Kenneth) |
collection | MIT |
description | Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2012. |
first_indexed | 2024-09-23T13:46:01Z |
format | Thesis |
id | mit-1721.1/75448 |
institution | Massachusetts Institute of Technology |
language | eng |
last_indexed | 2024-09-23T13:46:01Z |
publishDate | 2012 |
publisher | Massachusetts Institute of Technology |
record_format | dspace |
spelling | mit-1721.1/754482019-04-12T09:02:20Z Application-level caching with transactional consistency Ports, Dan R. K. (Dan Robert Kenneth) Barbara H. Liskov. Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science. Massachusetts Institute of Technology. Dept. of Electrical Engineering and Computer Science. Electrical Engineering and Computer Science. Thesis (Ph. D.)--Massachusetts Institute of Technology, Dept. of Electrical Engineering and Computer Science, 2012. This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections. Cataloged from PDF version of thesis. Includes bibliographical references (p. 147-159). Distributed in-memory application data caches like memcached are a popular solution for scaling database-driven web sites. These systems increase performance significantly by reducing load on both the database and application servers. Unfortunately, such caches present two challenges for application developers. First, they cannot ensure that the application sees a consistent view of the data within a transaction, violating the isolation properties of the underlying database. Second, 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. This thesis addresses both of these problems in a new cache called TxCache. TxCache is a transactional cache: it ensures that any data seen within a transaction, whether from the cache or the database, reflects a slightly stale but consistent snapshot of the database. TxCache also offers a simple programming model. Application developers simply designate certain functions as cacheable, and the system automatically caches their results and invalidates the cached data as the underlying database changes. Our experiments found that TxCache can substantially increase the performance of a web application: on the RUBiS benchmark, it increases throughput by up to 5.2x relative to a system without caching. More importantly, on this application, TxCache achieves performance comparable (within 5%) to that of a non-transactional cache, showing that consistency does not have to come at the price of performance. by Dan R. K. Ports. Ph.D. 2012-12-13T17:06:21Z 2012-12-13T17:06:21Z 2012 2012 Thesis http://hdl.handle.net/1721.1/75448 818331182 eng M.I.T. theses are protected by copyright. They may be viewed from this source for any purpose, but reproduction or distribution in any format is prohibited without written permission. See provided URL for inquiries about permission. http://dspace.mit.edu/handle/1721.1/7582 159 p. application/pdf Massachusetts Institute of Technology |
spellingShingle | Electrical Engineering and Computer Science. Ports, Dan R. K. (Dan Robert Kenneth) Application-level caching with transactional consistency |
title | Application-level caching with transactional consistency |
title_full | Application-level caching with transactional consistency |
title_fullStr | Application-level caching with transactional consistency |
title_full_unstemmed | Application-level caching with transactional consistency |
title_short | Application-level caching with transactional consistency |
title_sort | application level caching with transactional consistency |
topic | Electrical Engineering and Computer Science. |
url | http://hdl.handle.net/1721.1/75448 |
work_keys_str_mv | AT portsdanrkdanrobertkenneth applicationlevelcachingwithtransactionalconsistency |