Publication:

On the Design and Implementation of High-Performance Transaction Processing in Main-Memory Databases

Loading...
Thumbnail Image

Date

2020-05-12

Published Version

Published Version

Journal Title

Journal ISSN

Volume Title

Publisher

The Harvard community has made this article openly available. Please share how this access benefits you.

Research Projects

Organizational Units

Journal Issue

Citation

Huang, Yihe. 2020. On the Design and Implementation of High-Performance Transaction Processing in Main-Memory Databases. Doctoral dissertation, Harvard University, Graduate School of Arts & Sciences.

Abstract

Main-memory databases are core to many applications, and the performance of modern main-memory database systems is a subject of intense study. It is long understood that the concurrency control algorithm underlying a database system is the deciding factor of how well the system performs under contended workloads. Optimistic concurrency control (OCC) can achieve excellent performance on uncontended workloads for main-memory transactional databases. Contention causes OCC's performance to degrade, however, and recent concurrency control designs, such as hybrid OCC/locking systems and variations of multiversion concurrency control (MVCC), have claimed to outperform the best OCC systems. We evaluate several concurrency control designs under varying contention and varying workloads, including TPC-C, and find that implementation choices unrelated to concurrency control may explain much of OCC's previously-reported degradation. When these implementation choices are made sensibly, OCC performance does not collapse on many high-contention workloads. We also present two optimization techniques, commit-time updates and timestamp splitting, that can dramatically improve the high-contention performance of both OCC and MVCC. Though these techniques are known, we apply them in a new context and highlight their potency: when combined, they lead to performance gains of 4.8x for OCC and 3.8x for MVCC in a TPC-C workload.

Description

Other Available Sources

Research Data

Keywords

Database, Concurrency control, Performance, Transaction processing

Terms of Use

This article is made available under the terms and conditions applicable to Other Posted Material (LAA), as set forth at Terms of Service

Endorsement

Review

Supplemented By

Related Stories