1/24
文档分类:通信/电子

11g 新特性之--Query cache result.docx


下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

特别说明:文档预览什么样,下载就是什么样。

下载所得到的文件列表
11g 新特性之--Query cache result.docx
文档介绍:
Oracle11g新特性之---QueryCacheResult该特性是11gR1引入的,关于queryresultcache特性,主要有2种:1.PL/SQLFunctionResultCache--针对plsql而言2.QueryResultCache--顾名思义针对重复执行的sql我们都知道oracle通常是通过参数来进行控制某个功能的,当然这个也不例外,首先我们来介绍跟该特性有关的几个参数(包括隐含参数):SQL>select*fromv$versionwhererownum<2;BANNER-----------------------------------------------------------------------------OracleDatabase11gEnterpriseEditionRelease11.2.0.1.0-ProductionSQL>showparameterresultNAMETYPEVALUE----------------------------------------------------_client_result_cache_bypassbooleanFALSE_result_cache_auto_execution_thresholdinteger1_result_cache_auto_size_thresholdinteger100_result_cache_auto_time_distanceinteger300_result_cache_auto_time_thresholdinteger1000_result_cache_block_sizeinteger1024_result_cache_globalbooleanTRUE_result_cache_timeoutinteger10_xsolapi_sql_result_set_cache_sizeinteger32client_result_cache_lagbiginteger3000client_result_cache_sizebiginteger0result_cache_max_resultinteger5result_cache_max_sizebiginteger960Kresult_cache_modestringMANUALresult_cache_remote_expirationinteger0几个重要的参数:result_cache_mode该参数是最为重要的,其属性有manual和force两种。manual是默认属性,也就是说我们要启用该特性,那么必须通过hint来实现,不然oracle的优化器是无法认知的,那么是什么hint呢?如下:SQL>selectname,versionfromv$sql_hint2wherenamelike'%RESULT%'NAMEVERSION-----------------------------------------------------------------RESULT_CACHE11.1.0.6NO_RESULT_CACHE11.1.0.6当设置为force时,oracle优化就能自动识别了,不需要使用hint,相反,如果当设置为force时,同时你又不想某个sql或应用使用该特性,那么可以使用NO_RESUIT_CACHEhint来进行避规。该参数其实还可以设置为auto,不过文档中未提及。至于说,当启动该特性时,oracle是如何来实现的?这个问题需要进一步研究。result_cache_max_size该参数控制着使用该特性的内存大小,当该参数设置为0,那么也就意味着关闭了该特性。该部分内存是从SGA中分配的,至于分配的比例关系,metalink提供了如下的数据:0.25%ofMEMORY_TARGETor0.5%ofSGA_TARGETor1%ofSHARED_POOL_SIZE上面的关系应该是一目了然了,如何解释?我暂且不说,给大家留个问题。result_cache_max_result该参数是控制单个result所能占据querycache的大小比例,注意是一个百分比。该参数默认是是5%,取值范围当然是1%~100%了。result_cache_remote_expiration该参数的作用是根据远程数据库对象设置缓存过期的时间,默认值为0.也就是说,默认情况下,远程数据库对象不会被进行cache的。_result_cache_global顾名思义,该参数肯定是针对Rac集群而设计的,这样可以大大的降低经典的gc等待。下面通过相关的实验操作来进行详细的说明:SQL>createtableht01asselectown
内容来自淘豆网www.taodocs.com转载请标明出处.
相关文档
非法内容举报中心
文档信息
  • 页数24
  • 收藏数0 收藏
  • 顶次数0
  • 上传人cjc201601
  • 文件大小23 KB
  • 时间2020-10-26
文档标签