Transaction Processing at Scale
Online transaction processing (OLTP) is critical for applications including finance, e-commerce, social networks, and healthcare. The increasing performance demands of these applications require OLTP to scale massively. Concurrency control is a major scalability bottleneck in such systems. This talk presents three projects that identify and help resolve scalability challenges. First, I present a scalability study of concurrency control on a simulated 1000-core processor and show the bottlenecks that constrain the scaling of classic algorithms. Then, I present a new protocol called TicToc that removes the bottleneck of central timestamp allocation on multicore processors. The key technique is data-driven timestamp management that dynamically calculates each transaction's timestamp based on its data access pattern. Finally, I present Sundial, a distributed concurrency control scheme that mitigates the bottleneck of long network latency through a lightweight caching protocol. The talk ends with a vision of transaction processing in the era of cloud computing and internet of things.