• Publications
  • Influence
Making snapshot isolation serializable
A theory is developed that characterizes when nonserializable executions of applications can occur under Snapshot Isolation, and it is applied to demonstrate that the TPC-C benchmark application has no serialization anomalies under SI, and how this demonstration can be generalized to other applications. Expand
Scalable Atomic Visibility with RAMP Transactions
This work presents algorithms for Read Atomic Multipartition (RAMP) transactions that enforce atomic visibility while offering excellent scalability, guaranteed commit despite partial failures, and minimized communication between servers (via partition independence). Expand
How a consumer can measure elasticity for cloud platforms
Improved ways to quantify the elasticity concept are offered, using data available to the consumer, and a measure that reflects the financial penalty to a particular consumer, from under-provisioning or over- Provisioning is defined. Expand
Highly Available Transactions: Virtues and Limitations
A taxonomy of highly available systems is introduced and existing ACID isolation and distributed data consistency guarantees are analyzed to identify which can and cannot be achieved in HAT systems. Expand
Problem-Based Learning for Foundation Computer Science Courses
A summary of the experience over three years of PBL teaching and some of the pragmatic issues around introducing the radical change in teaching, maintaining staff support, and continuing refinement of the approach are discussed. Expand
Making sense of business process descriptions: An experimental comparison of graphical and textual notations
How effective is a notation in conveying the writer's intent correctly? This paper identifies understandability of design notations as an important aspect which calls for an experimental comparison.Expand
YCSB+T: Benchmarking web-scale transactional databases
YCSB+T is described, an extension of YCSB, that wraps database operations within transactions that wraps transaction support in NoSQL databases, and the experience with using CEW to evaluate some NoSQL systems is shared. Expand
Coordination Avoidance in Database Systems
A formal framework is developed that determines whether an application requires coordination for correct execution by operating on application-level invariants over database states and shows that many are invariant confluent and therefore achievable without coordination. Expand
The Cost of Serializability on Platforms That Use Snapshot Isolation
This work evaluates the performance impact of proposals for modifying the application programs, without changing their semantics, so that they are certain to execute serializably even on an engine that uses SI, and gives guidelines on which conflicts to introduce so as to ensure correctness with little impact on performance. Expand
Atomic Transactions