美文网首页
Day46 MVCC和BufferPool 缓存机制

Day46 MVCC和BufferPool 缓存机制

作者: 小周爱吃瓜 | 来源:发表于2022-05-25 11:48 被阅读0次
  • 多版本事务控制

undo日志,readview机制。

Screen Shot 2022-05-25 at 11.18.27 AM.png

trx_id,id,name 组成readview视图。

Screen Shot 2022-05-25 at 11.23.06 AM.png

MVCC和BufferPool

Screen Shot 2022-05-25 at 11.29.23 AM.png
  1. 数据库的crud都是直接操作buffer pool的,buffer pool设置成机器内存的60%左右,可以适当调大.
  2. 修改的数据通过IO线程随机写入到磁盘中,刷页(page),写入到磁盘中,称之为刷脏.
  3. Screen Shot 2022-05-25 at 11.38.51 AM.png

总结

MVCC机制是通过read-view机制与undo版本链对比,使得不同的事务会根据数据版本链对比规则读取同一条数据在版本链上的不同版本数据.

  • 为什么不直接在磁盘上操作sql呢?

因为性能差,通过写入到BufferPool内存,然后顺序写日志文件。

结论: 这样的配置可以在较高配置机器上可以抗下几千的读写请求.

Screen Shot 2022-05-25 at 11.46.07 AM.png
  • 事务begin之后,
    trx 1: 读的都是当时的commitId,的最新版本视图,之后再次读取也是他的事务readview视图。

trx 2: 读的是commit之后的视图.

相关文章

网友评论

      本文标题:Day46 MVCC和BufferPool 缓存机制

      本文链接:https://www.haomeiwen.com/subject/odosprtx.html