cache buffers chains latch
从 Oracle 8i Database 开始, 散列锁存器<-------(1:m)------>hash bucket<-------------(1:1)---------->hash chain
1.每个逻辑读取需要一个latch get操作个一个CPU
2.从latch get 例程中获得的唯一方法是获取锁存器
3.在任意一个时刻,只有一个进程可以拥有cache buffers链,并且这个锁存器覆盖许多数据库,另一个进程可能需要其中一些数据块。
为了使用高速缓冲区,要查询或修改Hash chain的进程必须获取管理响应Chain的Cache buffers chains latch.
因为一个Cache buffers chains latch保护多个Hash Bucket。从Oracle 9i起,以只读为目的的查询Chain时,可以将cache buffers chains latch
以Shared 模式共享,因此有助于减少争用。
对于Shared 模式的cache buffers chains latch 有几个注意点:
若能共享cache buffers chains latch,理论上不应该发生
从 Oracle 8i Database 开始, 散列锁存器<-------(1:m)------>hash bucket<-------------(1:1)---------->hash chain
1.每个逻辑读取需要一个latch get操作个一个CPU
2.从latch get 例程中获得的唯一方法是获取锁存器
3.在任意一个时刻,只有一个进程可以拥有cache buffers链,并且这个锁存器覆盖许多数据库,另一个进程可能需要其中一些数据块。
为了使用高速缓冲区,要查询或修改Hash chain的进程必须获取管理响应Chain的Cache buffers chains latch.
因为一个Cache buffers chains latch保护多个Hash Bucket。从Oracle 9i起,以只读为目的的查询Chain时,可以将cache buffers chains latch
以Shared 模式共享,因此有助于减少争用。
对于Shared 模式的cache buffers chains latch 有几个注意点:
若能共享cache buffers chains latch,理论上不应该发生