ORACLE数据缓冲区DB cache
2024-10-19 06:17:26
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,还有哈希。
最新文章
- startUML破解方式
- 关于handler 和 looper 的问题
- 【Python网络编程】利用Python进行TCP、UDP套接字编程
- Python变量、数据类型6
- java.lang.NullPointerException&;com.cb.action.LoginAction.execute(LoginAction.java:48)
- Android Studio中使用Gradle打包
- 如何从google play下载app应用,直接下载apk
- Windows Message Queue(优先队列)
- struts2在result中使用el表达式碰到的问题
- Process Doppelgänging
- 全球排名第一的免费开源ERP Odoo 12产品发布会北京站开始报名
- 《Python 数据科学实践指南》读书笔记
- new和delete操作符
- Vue proxy
- golang中defer的理解
- Spark(1.6.1) Sql 编程指南+实战案例分析
- [leetcode]Candy @ Python
- Flutter框架概览
- vue项目在ie浏览器和360浏览器的兼容模式下不显示,出现promise未定义问题
- Atitit.404错误解决标准流程and url汉字中文路径404错误resin4 resin chinese char path 404 err解决