虚位以待(AD)
虚位以待(AD)
首页 > 数据库 > Oracle数据库 > ORACLE数据缓冲区DB cache

ORACLE数据缓冲区DB cache
类别:Oracle数据库   作者:码皇   来源:互联网   点击:

ORACLE数据缓冲区DB cacheDB CACHE是以数据块为单位组织的缓冲区,数据库刚刚启动的时候,DB CACHE中几乎没有用户数据的缓冲,当会话访问数据库中的表或索引时,首先会检查DB CACHE中是否存在该数据,如果不
ORACLE数据缓冲区DB cache   DB CACHE是以数据块为单位组织的缓冲区,数据库刚刚启动的时候,DB CACHE中几乎没有用户数据的缓冲,当会话访问数据库中的表或索引时,首先会检查DB CACHE中是否存在该数据,如果不存在,就会从数据文件中读取该数据块到DB CACHE中,然后再从DB CACHE中读取该数据。   定位DB CACHE中的数据块是通过散列算法实现的,有一个哈希链结构,缓冲区中正在使用的数据块都在上面。   如果要查找数据块,散列运算算出数据块所在链的链头,从链头的双向链表结构扫描下去,即可找到数据块。   这每一个链,我们称之为BUCKET,其数量在数据库启动后就不会改变,BUCKET数量有参数_DB_BLOCK_HASH_BUCKETS指定。   DB CACHE由BUFFER构成。   DB CHACHE中的算法有两种,LRU算法换进换出buffer,还有哈希。  
相关热词搜索: ORACLE 数据 缓冲区