卡内基梅隆的数据库课程,包括:事务的定义和ACID,隔离性(并发场景下的交错执行),RW、WR、WW冲突,可串行化、Conflict Serializability(交换、优先图)、View Serializability(NP完全问题);lock VS latch,lock类型,锁管理器,2PL,S2PL,SS2PL;死锁检测(是否有环),根据各种条件打破循环,死锁预防(基于时间戳分配),锁粒度(层级锁,支持更高并发),IS、IX、SIX锁; 时间戳排序并发控制,W-TS(X)、R-TS(X),可恢复性;OCC,三个方面阶段:读/写、校验、写入,backward validation,forward validation;幻读,重新执行,谓词锁,索引锁,事务隔离级别,基于2PL方式的各种隔离级别;MVCC并发控制,TO、OCC、2PL,版本存储append-only、time-travel、delta-storage;垃圾收集:Tuple-level(Background Vacuuming vs. Cooperative Cleaning)、Transaction-level;索引管理,主索引管理,二级索引管理(Logical Pointers、Physical Pointers)、MVCC index;MVCC delete(Deleted Flag、Tombstone Tuple)
阅读全文