Sloth: Being Lazy is a Virtue (When Issuing Database Queries)
Author(s)
Cheung, Alvin K.; Madden, Samuel R.; Solar-Lezama, Armando
DownloadMadden_Sloth being.pdf (782.0Kb)
OPEN_ACCESS_POLICY
Open Access Policy
Creative Commons Attribution-Noncommercial-Share Alike
Terms of use
Metadata
Show full item recordAbstract
Many web applications store persistent data in databases. During execution, such applications spend a significant amount of time communicating with the database for retrieval and storing of persistent data over the network. These network round trips represent a significant fraction of the overall execution time for many applications and as a result increase their latency. While there has been prior work that aims to eliminate round trips by batching queries, they are limited by 1) a requirement that developers manually identify batching opportunities, or 2) the fact that they employ static program analysis techniques that cannot exploit many opportunities for batching. In this paper, we present Sloth, a new system that extends traditional lazy evaluation to expose query batching opportunities during application execution, even across loops, branches, and method boundaries. We evaluated Sloth using over 100 benchmarks from two large-scale open-source applications, and achieved up to a 3x reduction in page load time by delaying computation.
Date issued
2014-06Department
Massachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory; Massachusetts Institute of Technology. Department of Electrical Engineering and Computer ScienceJournal
Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data - SIGMOD '14
Publisher
Association for Computing Machinery
Citation
Cheung, Alvin, Samuel Madden, and Armando Solar-Lezama. “Sloth.” Proceedings of the 2014 ACM SIGMOD International Conference on Management of Data - SIGMOD ’14 (2014), June 22–27, 2014, Snowbird, UT, USA. ACM, New York, NY, USA p.931-942.
Version: Author's final manuscript
ISBN
9781450323765