返回数说广场
1
Oracle数据库在搜索buffer时,主要涉及以下几个步骤:
计算HASH值:进程根据要访问块的文件号、块号,计算出一个HASH值,这个值用于在HASH表中快速定位到对应的Bucket。
搜索HASH Bucket:根据计算出的HASH值,在HASH表中找到对应的HASH Bucket。
搜索Bucket后的CBC链表:在找到Bucket之后,Oracle会搜索该Bucket后的Cache Buffer Chains(CBC)链表,查找目标的Block Header(BH)。
找到目标BH:在CBC链表中找到目标Block Header(BH),这个BH包含了对应数据块的元数据信息。
取出Buffer的BA:从找到的Block Header中取出Buffer的Block Address(BA),即数据块在Buffer Cache中的地址。
访问Buffer:最后,根据Block Address访问具体的Buffer,获取或修改数据
0
1 165
分享
评论
热门数说


