1:db2 的mvcc ,写不阻塞读,读不阻塞写,的实现方法,希望能讲讲底层的
2 :pg中mvcc的实现方法 ,
db2没有mvcc, 只有已提交读和脏读这种类型的并发控制。内部通过内存里的锁机制来实现。有时候需要从日志里找到历史页面来获取非脏读的信息。PG是追加更新来实现mvcc。数据insert时候会加上xmin事务号,update的数据并不删除原数据,而是加上删除事务号xmax,然后追加插入新版本的数据。delete也是加删除事务号xmax。通过比对事务号和xmin xmax来判断数据是否可见,从而实现MVCC。这种方式会带来数据和索引膨胀的问题,需要注意。
关于TWT使用指南社区专家合作厂商入驻社区企业招聘投诉建议版权与免责声明联系我们 © 2024talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30