MVCC
- 当事务写入一个对象的时候,数据库创建这个对象的一个新版本
- 当事务读取的时候,读取自事务开始后的该对象的最新版本
并发协议
- Timestamp Ordering,每个事务关联一个时间戳,以检测顺序
- Optimistic Concurrency Control
- Two-Phase Locking。Txns acquire appropriate lock on physical version before they can read/write a logical tuple .
Tuple 的格式:
版本存储
- Append-Only 存储:每一次更新,在表的空位置添加一个新版本的 Tuple。
- Time-Travel 存储。每一次新增,将当前的版本拷贝到 Time Travel 表中。
- 增量存储。每次更新,只拷贝改变的字段到增量存储中。