Using restricted transactional memory to build a scalable in-memory database

Zhaoguo Wang, Hao Qian, Jinyang Li, Haibo Chen

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

The recent availability of Intel Haswell processors marks the transition of hardware transactional memory from research toys to mainstream reality. DBX is an in-memory database that uses Intel's restricted transactional memory (RTM) to achieve high performance and good scalability across multicore machines. The main limitation (and also key to practicality) of RTM is its constrained working set size: An RTM region that reads or writes too much data will always be aborted. The design of DBX addresses this challenge in several ways. First, DBX builds a database transaction layer on top of an underlying shared-memory store. The two layers use separate RTM regions to synchronize shared memory access. Second, DBX uses optimistic concurrency control to separate transaction execution from its commit. Only the commit stage uses RTM for synchronization. As a result, the working set of the RTMs used scales with the meta-data of reads and writes in a database transaction as opposed to the amount of data read/written. Our evaluation using TPC-C workload mix shows that DBX achieves 506,817 transactions per second on a 4-core machine.

Original languageEnglish (US)
Title of host publicationProceedings of the 9th European Conference on Computer Systems, EuroSys 2014
PublisherAssociation for Computing Machinery
DOIs
StatePublished - 2014
Event9th ACM European Conference on Computer Systems, EuroSys 2014 - Amsterdam, Netherlands
Duration: Apr 14 2014Apr 16 2014

Other

Other9th ACM European Conference on Computer Systems, EuroSys 2014
CountryNetherlands
CityAmsterdam
Period4/14/144/16/14

Fingerprint

Data storage equipment
Concurrency control
Resin transfer molding
Metadata
Computer hardware
Scalability
Synchronization
Availability

ASJC Scopus subject areas

  • Hardware and Architecture
  • Control and Systems Engineering

Cite this

Wang, Z., Qian, H., Li, J., & Chen, H. (2014). Using restricted transactional memory to build a scalable in-memory database. In Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014 [26] Association for Computing Machinery. https://doi.org/10.1145/2592798.2592815

Using restricted transactional memory to build a scalable in-memory database. / Wang, Zhaoguo; Qian, Hao; Li, Jinyang; Chen, Haibo.

Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014. Association for Computing Machinery, 2014. 26.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Wang, Z, Qian, H, Li, J & Chen, H 2014, Using restricted transactional memory to build a scalable in-memory database. in Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014., 26, Association for Computing Machinery, 9th ACM European Conference on Computer Systems, EuroSys 2014, Amsterdam, Netherlands, 4/14/14. https://doi.org/10.1145/2592798.2592815
Wang Z, Qian H, Li J, Chen H. Using restricted transactional memory to build a scalable in-memory database. In Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014. Association for Computing Machinery. 2014. 26 https://doi.org/10.1145/2592798.2592815
Wang, Zhaoguo ; Qian, Hao ; Li, Jinyang ; Chen, Haibo. / Using restricted transactional memory to build a scalable in-memory database. Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014. Association for Computing Machinery, 2014.
@inproceedings{2ff9f3cbd8624c67aac85147af8e883c,
title = "Using restricted transactional memory to build a scalable in-memory database",
abstract = "The recent availability of Intel Haswell processors marks the transition of hardware transactional memory from research toys to mainstream reality. DBX is an in-memory database that uses Intel's restricted transactional memory (RTM) to achieve high performance and good scalability across multicore machines. The main limitation (and also key to practicality) of RTM is its constrained working set size: An RTM region that reads or writes too much data will always be aborted. The design of DBX addresses this challenge in several ways. First, DBX builds a database transaction layer on top of an underlying shared-memory store. The two layers use separate RTM regions to synchronize shared memory access. Second, DBX uses optimistic concurrency control to separate transaction execution from its commit. Only the commit stage uses RTM for synchronization. As a result, the working set of the RTMs used scales with the meta-data of reads and writes in a database transaction as opposed to the amount of data read/written. Our evaluation using TPC-C workload mix shows that DBX achieves 506,817 transactions per second on a 4-core machine.",
author = "Zhaoguo Wang and Hao Qian and Jinyang Li and Haibo Chen",
year = "2014",
doi = "10.1145/2592798.2592815",
language = "English (US)",
booktitle = "Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014",
publisher = "Association for Computing Machinery",

}

TY - GEN

T1 - Using restricted transactional memory to build a scalable in-memory database

AU - Wang, Zhaoguo

AU - Qian, Hao

AU - Li, Jinyang

AU - Chen, Haibo

PY - 2014

Y1 - 2014

N2 - The recent availability of Intel Haswell processors marks the transition of hardware transactional memory from research toys to mainstream reality. DBX is an in-memory database that uses Intel's restricted transactional memory (RTM) to achieve high performance and good scalability across multicore machines. The main limitation (and also key to practicality) of RTM is its constrained working set size: An RTM region that reads or writes too much data will always be aborted. The design of DBX addresses this challenge in several ways. First, DBX builds a database transaction layer on top of an underlying shared-memory store. The two layers use separate RTM regions to synchronize shared memory access. Second, DBX uses optimistic concurrency control to separate transaction execution from its commit. Only the commit stage uses RTM for synchronization. As a result, the working set of the RTMs used scales with the meta-data of reads and writes in a database transaction as opposed to the amount of data read/written. Our evaluation using TPC-C workload mix shows that DBX achieves 506,817 transactions per second on a 4-core machine.

AB - The recent availability of Intel Haswell processors marks the transition of hardware transactional memory from research toys to mainstream reality. DBX is an in-memory database that uses Intel's restricted transactional memory (RTM) to achieve high performance and good scalability across multicore machines. The main limitation (and also key to practicality) of RTM is its constrained working set size: An RTM region that reads or writes too much data will always be aborted. The design of DBX addresses this challenge in several ways. First, DBX builds a database transaction layer on top of an underlying shared-memory store. The two layers use separate RTM regions to synchronize shared memory access. Second, DBX uses optimistic concurrency control to separate transaction execution from its commit. Only the commit stage uses RTM for synchronization. As a result, the working set of the RTMs used scales with the meta-data of reads and writes in a database transaction as opposed to the amount of data read/written. Our evaluation using TPC-C workload mix shows that DBX achieves 506,817 transactions per second on a 4-core machine.

UR - http://www.scopus.com/inward/record.url?scp=84900418876&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=84900418876&partnerID=8YFLogxK

U2 - 10.1145/2592798.2592815

DO - 10.1145/2592798.2592815

M3 - Conference contribution

AN - SCOPUS:84900418876

BT - Proceedings of the 9th European Conference on Computer Systems, EuroSys 2014

PB - Association for Computing Machinery

ER -