2018 · 28 citations · 19 references
ComputingComputer ScienceComputer SystemsDatabasesParallel AlgorithmsParallel ComputingConcurrency ControlData ParallelismQuery ProcessingTransaction ManagementLarge-scale Data ProcessingMulti-version Concurrency ControlOlap Query ProcessingParallel Concurrency ControlParallel Query ProcessingParallel Transaction ProcessingProcessingTransaction Processing
Efficient transaction management is a delicate task. As systems face transactions of inherently different types, ranging from point updates to long-running analytical queries, it is hard to satisfy their requirements with a single execution engine. Unfortunately, most systems rely on such a design that implements its parallelism using multi-version concurrency control. While MVCC parallelizes short-running OLTP transactions well, it struggles in the presence of mixed workloads containing long-running OLAP queries, as scans have to work their way through vast amounts of versioned data. To overcome this problem, we reintroduce the concept of hybrid processing and combine it with state-of-the-art MVCC: OLAP queries are outsourced to run on separate virtual snapshots while OLTP transactions run on the most recent version of the database. Inside both execution engines, we still apply MVCC.
19
Speedy transactions in multicore in-memory databases
Stephen Tu, Wenting Zheng, Eddie Kohler et al. · 2013 · 527 citations · Full text
Cristian Diaconu, Craig Freedman, Erik Ismert et al. · 2013 · 469 citations
Franz Färber, Sang Kyun, Jürgen Primsch et al. · ACM SIGMOD Record · 2012 · 381 citations · Full text