如何优化latch: cache buffer chains
相关推荐
Oracle解决LATCH争用[项目代码]
本文详细介绍了Oracle数据库中CACHE BUFFERS CHAINS LATCH的作用及其争用问题。CACHE BUFFERS CHAINS LATCH主要用于保护HASH CHAIN结构,每个LATCH保护多条HASH CHAIN。文章通过隐含参数和视图查询展示了系统中LATCH和HASH BUCKET的数量关系,并指出增大BUFFER CACHE可以降低HASH CHAIN争用的概率。此外,文章还分析了导致LATCH:CACHE BUFFERS CHAINS等待事件的两个主要原因:低效的SQL和HOT BLOCK。最后,文章提到从Oracle 9i起,某些数据块可以通过SHARED模式获取LATCH,从而减少争用。
Oracle性能诊断之——Latch free
Oracle性能诊断之——Latch free
oracle、应急处置、方案
在oracle数据库运维过程中,总有几个事件是你遇到过的,怎么应急处置,是一个dba该有的基本素养,这篇文章记录了oracle一些典型的事件场景,怎么处理这些事件,希望这篇文章给你带来帮助。
oracle 维护指南
oracle 数据库维护指南 淘宝内部资料!
cache buffers chain形成原因分析
当一个数据块被读入SGA. 这些数据块所在缓冲区的头地址(buffer headers)被挂载到链列表上(LRU, LRUW).这些连列表被挂载在hash buckets上. Oracle定义了一些cache buffer chains latches来保护这种内存结构的数据一致性读取.如下表所示. 一个进程在对数据块执行add, remove, search, inspect, read 或者modify之前需要首先获得cache buffers chains latch. 有两条规则跟oracle访问数据块时的cache buffers chains相关. 每一个logical read都会造成一个latch和cpu时间. Oracle必须获得期望的latch才能执行下一个步骤.


