大佬教程收集整理的这篇文章主要介绍了bdb log为什么 有 region buffer 和 log cursor buf,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
对bdb log来说,在共享内存中 有一块 buffer,同时每一个 log cursor 都自带一个 malloc的buf. why?
我认为:
region buffer存的是log最末尾,主要用来写. 毕竟 log 是 顺序写的,最末尾的 log rec当然最热. 同时 多个 log rec缓存起来 一次写入对io 有极大好处.
log cursor的buf是用来读的. 可以是log 中每一部分. 这里 类似 read ahread(read behind),每次从disk读,都是读一整块 log buf size.
在logc_get() 中,需要考虑:
@H_502_11@要取的 log rec是否在 region buf中? (整个 log rec都在 region buf; 部分在region buf,部分需要从disk 读的情况)
从disk log file 读log rec
以上是大佬教程为你收集整理的bdb log为什么 有 region buffer 和 log cursor buf全部内容,希望文章能够帮你解决bdb log为什么 有 region buffer 和 log cursor buf所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。