介绍几篇并发控制的工作(并发控制算法还有很多,这里也只是简单看了几篇):
《An Empirical Evaluation of In-Memory Multi-Version Concurrency Control》(VLDB 17')实测了几种In-Memory MVCC机制。参见论文阅读 - InMemoryDB并发控制算法评估。
《An Evaluation of Distributed Concurrency Control》(VLDB17')这篇主要是评估了分布式并发控制的机制。参见论文阅读 - 分布式并发控制算法评...
Haketon的高性能并发控制算法
High-Performance Concurrency Control Mechanisms for Main-Memory Databases (VLDB12')
这篇文章是微软Hekaton上的in-memory storage engine的高性能控制算法。
MV Storage Engine
关于事务可串行化的一个洞察和论述
如果事务的读和写逻辑上发生在同一时刻,则事务就是可串行化的。SI隔离级别并不满足这个情况,SI的读实际上是发生在事务开启时(事务开启时取快照,快照一旦确定了,即使读请求是...
分布式并发控制算法评估
An Evaluation of Distributed Concurrency Control(VLDB17')
这篇工作主要是比较并评估了6种in-memory分布式数据库的并发控制计算法。
System Overview
论文在Deneva系统上做分布式并发控制算法实现和测试。
Architecture
Deneva架构:shared-nothing
Env Model
所有的事务都使用存储过程,有些协议只能执行确定事务(需要提前知道访问哪些行)。
数据按consistent-hash分布,client上配置locat...
InMemoryDB并发控制算法评估
An Empirical Evaluation of In-Memory Multi-Version Concurrency Control (VLDB17')
这篇工作梳理了MVCC的四个要点:
并发控制协议
多版本存储
垃圾回收
索引管理
还介绍了MVCC的多种变体原理,实现了这些变体,然后在OLTP workload上测试评估各个变体的效果。
MVCC基础
MVCC介绍
MVCC是一种并发控制算法,一个数据库对象可能会被并发操作,算法维护同一个对象的多个版本来提高并...