University of Cambridge > Talks.cam > Microsoft Research Cambridge, public talks > Scaling transaction processing through data-oriented execution

Scaling transaction processing through data-oriented execution

Add to your list(s) Download to your calendar using vCal

If you have a question about this talk, please contact Microsoft Research Cambridge Talks Admins.

- This event may be recorded and made available internally or externally via http://research.microsoft.com. Microsoft will own the copyright of any recordings made. If you do not wish to have your image/voice recorded please consider this before attendin

Transaction processing is one of the most important and challenging data management workloads. Unfortunately, while hardware technology has undergone major advancements over the past decade, the core architecture of transaction processing systems has remained largely unchanged. The number of cores on a chip grows exponentially, following Moore’s Law, allowing for an ever increasing number of transactions to execute in parallel. As the number of concurrently-executing transactions increases, contended critical sections become scalability burdens. In this talk we first categorize the different types of critical sections a system executes during transaction processing and argue that not all of them are threats to scalability. Then, we identify the thread-to-transaction work assignment policy as the primary cause of contention of conventional shared-everything systems, and argue for the adoption of a data-oriented (or logically-partitioned) transaction execution design. Finally, we present the design of a transaction processing system under physical/logical partitioning (PLP) which achieves a dual goal. Like a physically-partitioned system the majority of data accesses occur in a single-threaded environment which renders the majority of unscalable critical sections unnecessary; like a logically-partitioned system it maintains the ACID properties, locking is distributed without resorting to distributed transactions, and load balancing is inexpensive because almost no data movement is necessary. Evaluation of a prototype implementation of PLP on multicore hardware demonstrates that PLP attains up to 6x higher throughput than a conventional system when running synthetic and real-world OLTP workloads.

This talk is part of the Microsoft Research Cambridge, public talks series.

Tell a friend about this talk:

This talk is included in these lists:

Note that ex-directory lists are not shown.

 

© 2006-2019 Talks.cam, University of Cambridge. Contact Us | Help and Documentation | Privacy and Publicity