Oracle 等待事件 gc buffer busy release 官方解释,作用,如何使用及优化方法

本站中文解释

Oracle GC Buffer Busy Release是在共享ャール实现时,大量并发访问同一或几乎相同资源数据时发生的一种特殊锁定现象。共享ャール(简写为GC)是Oracle数据库在数据库中管理并发存取资源的一种技术。它的实现采用“多个持有者团体”的机制,以提高访问的灵活性,以及允许多个行程同时修改数据,同时又能保证数据的安全性和一致性。

当一个行程被指定一个表的缓冲池时,它就被授予了该池的一个写锁,来保证其他行程此时不能对该池内的缓冲区内容进行修改。缓冲池内的缓冲区如果被另外一个极有可能被另外一个行程访问,这样就会产生GC Buffer Busy Release现象:当第一个行程试图对要共享的缓冲池内的缓冲区进行更新时,它就必须等待缓冲区被释放,以便它可以重新获取有写权限的锁,而该次等待就是GC Buffer Busy Release现象。

这种现象对数据库效率具有重大的影响,一个小的GC Buffer Busy Release占用的时间可以很大程度的影响数据库的性能,特别是数据库中涉及大量数据的场景中,GC Buffer Busy Release现象会加剧,从而影响数据库的可扩展性。

为了提升性能,控制GC Buffer Busy Release的释放时间,用户需要调整表的更新访问模式、加大数据缓冲池大小、优化用户行程的并发访问频率,以及增加系统中访问资源的并发能力等方面做出调整。

官方英文解释

This event indicates that the requested buffer was globally busy in the cluster, because the requested buffer had been transferred away by a remote instance and needed to be requested again.

Wait Time: The wait time is the actual time it took to resolve the buffer contention.

Parameter Description

file#

See “file#”

block#

See “block#”

class#

See “class”


数据运维技术 » Oracle 等待事件 gc buffer busy release 官方解释,作用,如何使用及优化方法