Tuning the Database Buffer Cache

2018-02-03 10:23:14来源:网络收集作者:程序诗人人点击

分享
一、12c:官档Books → Performance Tuning Guide → Part III Tuning Database Memory → 13 Tuning the Database Buffer Cache
二、关于 Database Buffer Cache
对于许多类型的操作,Oracle数据库使用缓冲区缓存来存储从磁盘读取的数据块。Oracle数据库绕过缓冲区缓存,用于特定的操作,例如排序和并行读取。
要有效地使用数据库缓冲区缓存,可以调优应用程序的SQL语句,以避免不必要的资源消耗。为了实现这一目标,验证经常执行的SQL语句和执行许多缓冲区的SQL语句都得到了良好的调优。
在使用并行查询时,考虑配置数据库以使用数据库缓冲区缓存,而不是直接读取程序全局区域(PGA)。当系统有大量内存时,这种配置可能是合适的。
See Also:《Oracle Database SQL Tuning Guide》有关调优SQL语句的信息《Oracle Database VLDB and Partitioning Guide》有关并行执行的信息
三、配置 Database Buffer Cache

在配置新的数据库实例时,不可能知道缓冲区缓存的正确大小。通常,数据库管理员对缓存大小进行第一次估计,然后在实例上运行一个有代表性的工作负载,并检查相关的统计数据,以查看缓存是否配置不足或配置过度。


本节描述如何配置数据库缓冲区缓存。如果您正在使用自动共享内存管理来配置共享全局区域(SGA),那么就不需要像本节描述的那样手动调优数据库缓冲区缓存。
1 使用 V$DB_CACHE_ADVICE 视图
V$DB_CACHE_ADVICE 视图显示了一系列潜在缓冲区缓存大小的模拟缺失率。该视图通过提供预测每个潜在缓存大小的物理读取数量的信息来帮助缓存分级。数据还包括一个物理读取因子,这是一个因素,当缓冲区缓存被调整为给定值时,估计当前物理读取的数量会发生变化。
然而,物理读取并不一定表示在Oracle数据库中读取磁盘,因为物理读取可以通过从文件系统缓存读取来完成。因此,成功地在缓存中找到的块和缓存的大小之间的关系并不总是一个平滑的分布。在调整缓冲池时,避免使用不为缓存命中率贡献(或贡献很小)的额外缓冲区。
下图演示了物理I/O比率和缓冲区缓存大小之间的关系。
Tuning the Database Buffer Cache

最新文章

123

最新摄影

闪念基因

微信扫一扫

第七城市微信公众平台