Scaling multicore databases via constrained parallel execution

Zhaoguo Wang, Shuai Mu, Yang Cui, Han Yi, Haibo Chen, Jinyang Li

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

Abstract

Multicore in-memory databases often rely on traditional concurrency control schemes such as two-phase-locking (2PL) or optimistic concurrency control (OCC). Unfortunately, when the workload exhibits a non-trivial amount of contention, both 2PL and OCC sacrifice much parallel execution opportunity. In this paper, we describe a new concurrency control scheme, interleaving constrained concurrency control (IC3), which provides serializability while allowing for parallel execution of certain conflicting transactions. IC3 combines the static analysis of the transaction workload with runtime techniques that track and enforce dependencies among concurrent transactions. The use of static analysis simplifies IC3's runtime design, allowing it to scale to many cores. Evaluations on a 64-core machine using the TPC-C benchmark show that IC3 outperforms traditional concurrency control schemes under contention. It achieves the throughput of 434K transactions/sec on the TPC-C bench-mark configured with only one warehouse. It also scales better than several recent concurrent control schemes that also target contended workloads.

Original languageEnglish (US)
Title of host publicationSIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data
PublisherAssociation for Computing Machinery
Pages1643-1658
Number of pages16
Volume26-June-2016
ISBN (Electronic)9781450335317
DOIs
StatePublished - Jun 26 2016
Event2016 ACM SIGMOD International Conference on Management of Data, SIGMOD 2016 - San Francisco, United States
Duration: Jun 26 2016Jul 1 2016

Other

Other2016 ACM SIGMOD International Conference on Management of Data, SIGMOD 2016
CountryUnited States
CitySan Francisco
Period6/26/167/1/16

Fingerprint

Concurrency control
Static analysis
Warehouses
Throughput
Data storage equipment

ASJC Scopus subject areas

  • Software
  • Information Systems

Cite this

Wang, Z., Mu, S., Cui, Y., Yi, H., Chen, H., & Li, J. (2016). Scaling multicore databases via constrained parallel execution. In SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data (Vol. 26-June-2016, pp. 1643-1658). Association for Computing Machinery. https://doi.org/10.1145/2882903.2882934

Scaling multicore databases via constrained parallel execution. / Wang, Zhaoguo; Mu, Shuai; Cui, Yang; Yi, Han; Chen, Haibo; Li, Jinyang.

SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data. Vol. 26-June-2016 Association for Computing Machinery, 2016. p. 1643-1658.

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

Wang, Z, Mu, S, Cui, Y, Yi, H, Chen, H & Li, J 2016, Scaling multicore databases via constrained parallel execution. in SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data. vol. 26-June-2016, Association for Computing Machinery, pp. 1643-1658, 2016 ACM SIGMOD International Conference on Management of Data, SIGMOD 2016, San Francisco, United States, 6/26/16. https://doi.org/10.1145/2882903.2882934
Wang Z, Mu S, Cui Y, Yi H, Chen H, Li J. Scaling multicore databases via constrained parallel execution. In SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data. Vol. 26-June-2016. Association for Computing Machinery. 2016. p. 1643-1658 https://doi.org/10.1145/2882903.2882934
Wang, Zhaoguo ; Mu, Shuai ; Cui, Yang ; Yi, Han ; Chen, Haibo ; Li, Jinyang. / Scaling multicore databases via constrained parallel execution. SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data. Vol. 26-June-2016 Association for Computing Machinery, 2016. pp. 1643-1658
@inproceedings{c539cf2a123d493cadc5df4acaa5b6da,
title = "Scaling multicore databases via constrained parallel execution",
abstract = "Multicore in-memory databases often rely on traditional concurrency control schemes such as two-phase-locking (2PL) or optimistic concurrency control (OCC). Unfortunately, when the workload exhibits a non-trivial amount of contention, both 2PL and OCC sacrifice much parallel execution opportunity. In this paper, we describe a new concurrency control scheme, interleaving constrained concurrency control (IC3), which provides serializability while allowing for parallel execution of certain conflicting transactions. IC3 combines the static analysis of the transaction workload with runtime techniques that track and enforce dependencies among concurrent transactions. The use of static analysis simplifies IC3's runtime design, allowing it to scale to many cores. Evaluations on a 64-core machine using the TPC-C benchmark show that IC3 outperforms traditional concurrency control schemes under contention. It achieves the throughput of 434K transactions/sec on the TPC-C bench-mark configured with only one warehouse. It also scales better than several recent concurrent control schemes that also target contended workloads.",
author = "Zhaoguo Wang and Shuai Mu and Yang Cui and Han Yi and Haibo Chen and Jinyang Li",
year = "2016",
month = "6",
day = "26",
doi = "10.1145/2882903.2882934",
language = "English (US)",
volume = "26-June-2016",
pages = "1643--1658",
booktitle = "SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data",
publisher = "Association for Computing Machinery",

}

TY - GEN

T1 - Scaling multicore databases via constrained parallel execution

AU - Wang, Zhaoguo

AU - Mu, Shuai

AU - Cui, Yang

AU - Yi, Han

AU - Chen, Haibo

AU - Li, Jinyang

PY - 2016/6/26

Y1 - 2016/6/26

N2 - Multicore in-memory databases often rely on traditional concurrency control schemes such as two-phase-locking (2PL) or optimistic concurrency control (OCC). Unfortunately, when the workload exhibits a non-trivial amount of contention, both 2PL and OCC sacrifice much parallel execution opportunity. In this paper, we describe a new concurrency control scheme, interleaving constrained concurrency control (IC3), which provides serializability while allowing for parallel execution of certain conflicting transactions. IC3 combines the static analysis of the transaction workload with runtime techniques that track and enforce dependencies among concurrent transactions. The use of static analysis simplifies IC3's runtime design, allowing it to scale to many cores. Evaluations on a 64-core machine using the TPC-C benchmark show that IC3 outperforms traditional concurrency control schemes under contention. It achieves the throughput of 434K transactions/sec on the TPC-C bench-mark configured with only one warehouse. It also scales better than several recent concurrent control schemes that also target contended workloads.

AB - Multicore in-memory databases often rely on traditional concurrency control schemes such as two-phase-locking (2PL) or optimistic concurrency control (OCC). Unfortunately, when the workload exhibits a non-trivial amount of contention, both 2PL and OCC sacrifice much parallel execution opportunity. In this paper, we describe a new concurrency control scheme, interleaving constrained concurrency control (IC3), which provides serializability while allowing for parallel execution of certain conflicting transactions. IC3 combines the static analysis of the transaction workload with runtime techniques that track and enforce dependencies among concurrent transactions. The use of static analysis simplifies IC3's runtime design, allowing it to scale to many cores. Evaluations on a 64-core machine using the TPC-C benchmark show that IC3 outperforms traditional concurrency control schemes under contention. It achieves the throughput of 434K transactions/sec on the TPC-C bench-mark configured with only one warehouse. It also scales better than several recent concurrent control schemes that also target contended workloads.

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

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

U2 - 10.1145/2882903.2882934

DO - 10.1145/2882903.2882934

M3 - Conference contribution

AN - SCOPUS:84979657016

VL - 26-June-2016

SP - 1643

EP - 1658

BT - SIGMOD 2016 - Proceedings of the 2016 International Conference on Management of Data

PB - Association for Computing Machinery

ER -