• buffer cache原理


    1.   理解cache buffer中几个关键性的概念
    
        Oracle SGA的主要结构就是cache buffer,其通常会占据整个SGA的大部分内存,对于OLTP架构而言。 理解cache buffer之前,我们需要
    先理解其涉及的几个概念。
    
     1)  链表(双向链表)
     2)  hash操作
     3)  bucket
    
    
    
    
    从图中我们可以看到,一个latch:cache buffers chains(x$bh.hladdr) 可以保护多个Hash Bucket,也就是说,如果我要访问某个block,我首先要获得这个latch,
    
    一个Hash Bucket对应一个Hash Chain List,
    
    
    而这个Hash Chain List挂载了一个或者多个Buffer Header。
    
    
    
    ++++ 9.2.0.8
    SQL&get; show parameter db_block_hash
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    _db_block_hash_buckets               integer     15667
    _db_block_hash_latches               integer     1024
    
    大家可以看到,9208中默认的bucket是比较多的,高达15667个,latch是1024,换句话讲,每个latch可以保护16个buckets。
    
    ++++10.2.0.5
    SQL&get; show parameter db_block_hash
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    _db_block_hash_buckets               integer     65536
    _db_block_hash_latches               integer     2048
    SQL&get;
    
    在10.2.0.5版本中,默认是buckets个数是64k,latch是2048个,即每个latch可以保护32个 bucket,这比9208版本高 了一倍。
    
    
    ++++11.2.0.2
    SQL&get; show parameter db_block_hash
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    _db_block_hash_buckets               integer     262144
    _db_block_hash_latches               integer     8192
    
    在11.2.0.2 版本中,默认参数值又有所改变,但是仍然是一个latch保护32个bucket。bucket越多,其实可以进一步降低争用,对于高并发环境来讲。
    
    

  • 相关阅读:
    TCP/IP和HTTP的举例理解
    c#中栈和堆的理解
    c#设计模式之单例模式
    JSON.stringify实例应用—将对象转换成JSON类型进行AJAX异步传值
    JSON.stringify初识
    c# 过滤字符串中的重复字符
    C#中jQuery Ajax实例(二)
    C#中jQuery Ajax实例(一)
    jQuery动态对表格Table进行添加或删除行以及修改列值操作
    asp.net中控件的Attributes用法
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13352032.html
Copyright © 2020-2023  润新知