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,还有哈希。

最新文章

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

热门文章

  1. SpringMVC注解@RequestMapping
  2. android获取Mac地址和IP地址
  3. java 内部类学习
  4. Android - 获取字符串长度的宽度
  5. SQL小细节
  6. HTML5教程:课时一HTML简介
  7. C/C++中文的编码和字符串处理
  8. LVS 介绍以及配置应用
  9. 算法专题训练 搜索a-T3 Ni骑士(ni)
  10. js 组件的写法