关注
分享下MVCC原理,目的:在不加锁的条件下也可以提高并发事务的读写性能,加锁机制可以控制并发但是开销很大。场合:用于读已提交和可重复读。实现:一般在末尾添加两个隐藏列,一个是事务id(DB_RTX_id),另外一个是回滚指针(DB_ROLL_PTR),只有DML操作才会生成事务ID.(1)当有DML操作时,将插入新数据,将旧数据放在undo日志中,且回滚指针指向旧数据(2)时间序列上第一个select会建立一致性视图read_view,由未提交事务id数组+最大事务id组成,通过比对链就可以确定数据(3)比对链规则:DB_RTX_id小于min_id已提交-可见;DB_RTX_id大于max_id未开始事务,不可见;DB_RTX_id在min_id和max_id之间,分两种,若row在数组中,未提交-不可见,不在数组中,已提交-可见。这块有一个视频:https://www.bilibili.com/video/BV1YJ411J7vb?from=search&seid=5325901820680320807
点赞
相关推荐
点赞 评论 收藏
分享
牛客热帖
正在热议
# 2025,我想...... #
7479次浏览 117人参与
# 我的简历长这样 #
2060841次浏览 27996人参与
# 夸一夸2024年的自己 #
8242次浏览 106人参与
# 秋招前后对offer的期望对比 #
192922次浏览 1448人参与
# 职场高情商速成班 #
228次浏览 6人参与
# 小米求职进展汇总 #
634431次浏览 4946人参与
# 实习,投递多份简历没人回复怎么办 #
2635168次浏览 36166人参与
# 你的实习什么时候入职 #
84275次浏览 912人参与
# 简历被挂麻了,求建议 #
2757071次浏览 35048人参与
# 投递实习岗位前的准备 #
1277747次浏览 19243人参与
# 我的工作日记 #
34064次浏览 497人参与
# 工作中,你有没有遇到非常爱骂人的领导? #
7287次浏览 71人参与
# 当你面对裁员会如何? #
57821次浏览 422人参与
# 校招入职后的感受 #
181948次浏览 2134人参与
# 职场吐槽大会 #
107276次浏览 869人参与
# 快手求职进展汇总 #
453697次浏览 5373人参与
# 选择和努力,哪个更重要? #
28894次浏览 307人参与
# 我的OC时间线 #
179098次浏览 1181人参与
# 投了多少份简历才上岸 #
252045次浏览 2864人参与
# 我在牛客求捞 #
7821次浏览 57人参与