您的位置:首页 > 数据库 > Oracle

Oracle体系结构及备份(七)——sga-data_buffer

2013-06-08 09:12 441 查看

一 什么是Data Buffer

 

        Data Buffer,数据高速缓冲区,暂存从数据文件中获得的数据块的数据映像,同样遵循LRU算法管理内存。当再次需要操作这些数据可以从内存中直接获取和更新,语句执行效率能够大幅度的提高。初始化参数DB_BLOCK_SIZE决定了数据块的大小,这也是数据库I/O的最小单位。

 

        数据高速缓存区由多个独立的子缓存池构成,可以独立的设置大小:

        -Default池:DB_CACHE_SIZE

        -Keep池:DB_KEEP_CACHE_SIZE

        -Recycle池:DB_RECYCLE_CACHE_SIZE

        只有Default池可以被SGA自动管理

 

        The database buffer cache is the portion of the SGA that holds copies of data blocks read from datafiles. All users concurrently connected to the instance share access to the database buffer cache.

 

        This section includes the following topics:

 

        Organization of the Database Buffer Cache

 

        The LRU Algorithm and Full Table Scans

 

 

二 操作示例

SQL> show parameter db_cache_size;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_cache_size			     big integer 0
SQL> show parameter sga_target;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
sga_target			     big integer 160M
SQL> desc v$db_cache_advice;
Name					   Null?    Type
----------------------------------------- -------- ----------------------------
ID						    NUMBER
NAME						    VARCHAR2(20)
BLOCK_SIZE					    NUMBER
ADVICE_STATUS					    VARCHAR2(3)
SIZE_FOR_ESTIMATE				    NUMBER
SIZE_FACTOR					    NUMBER
BUFFERS_FOR_ESTIMATE				    NUMBER
ESTD_PHYSICAL_READ_FACTOR			    NUMBER
ESTD_PHYSICAL_READS				    NUMBER
ESTD_PHYSICAL_READ_TIME			    NUMBER
ESTD_PCT_OF_DB_TIME_FOR_READS			    NUMBER
ESTD_CLUSTER_READS				    NUMBER
ESTD_CLUSTER_READ_TIME 			    NUMBER

SQL> show parameter db_keep_cache_size;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_keep_cache_size		     big integer 0
SQL> show parameter db_recycle_cache_size;

NAME				     TYPE	 VALUE
------------------------------------ ----------- ------------------------------
db_recycle_cache_size		     big integer 0

 

三 总结

 

        1.
数据高速缓冲区,暂存从数据文件中获得的数据块的数据映像;

        2.可以通过参数db_cache_size、db_keep_cache_size、db_recycle_cache_size查看Default池、Keep池、Recycling池的大小。

我的邮箱:wgbno27@163.com
新浪微博:@Wentasy27
微信公众平台:JustOracle(微信号:justoracle)
IT交流群:336882565(加群时验证 From CSDN XXX)
Oracle交流讨论组:https://groups.google.com/d/forum/justoracle
By Larry Wen





 

@Wentasy 博文仅供参考,欢迎大家来访。如有错误之处,希望批评指正。原创博文如需转载请注明出处,谢谢 :) [CSDN博客]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息