Ayuda
Ir al contenido

Dialnet


Resumen de Sloth: Being Lazy Is a Virtue (When Issuing Database Queries)

Alvin Cheung, Samuel R. Madden, Armando Solar Lezama

  • 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 (especially those that issue a lot of database queries) 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, as many of these opportunities require knowing precise information about the state of the running program.

    In this article, 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. Many such opportunities often require expensive and sophisticated static analysis to recognize from the application source code. Rather than doing so, Sloth instead makes use of dynamic analysis to capture information about the program state and, based on that information, decides how to batch queries and when to issue them to the database. We formalize extended lazy evaluation and prove that it preserves program semantics when executed under standard semantics. Furthermore, we describe our implementation of Sloth and our experience in evaluating Sloth using over 100 benchmarks from two large-scale open-source applications, in which Sloth achieved up to a 3 × reduction in page load time by delaying computation using extended lazy evaluation.


Fundación Dialnet

Dialnet Plus

  • Más información sobre Dialnet Plus