Oracle 11g中的IO Calibrate(automatic DOP: skipped because of IO calibrate statistics are missing)
Oracle 11g有两个对于性能方面的测试工具,一个就是RAT(Real Application Test),另一个就是IO校准(Calibrate IO)。RAT是一种负载重演组件,当进行系统软硬件升级的时候,我们一个很关注的问题是:此次变化能否提升系统性能、能提升多少,会不会有新的瓶颈。这个在过去是不能实现的,只能够在升级之后通过实践去发现。但是RAT可以捕获实际系统负载情况,将其在新环境下进行重演,并且进行度量比较。IO调教的作用也是IO负载模拟,从而判断出实际真实的系统IO情况。
正常情况下,IO是会自动校准的,可以得知具体的并发数;
explain plan for select /*+parallel*/ * from scott.emp;select * from table(dbms_xplan.display);
那么这里我怎么知道cbo计算的实际的并发数呢?
2种方式
1.通过v$pq_slave
2.通过执行计划的auto dop提示
可以看到,此时的实际并发数为2;
如果dop提示为:automatic DOP: skipped because of IO calibrate statistics are missing
那么表示dop无法自动校准io,这个可能会影响执行计划的并发度;从而影响查询影响
11g中有一个视图v$io_calibration_status,记录了系统进行校准状态。和统计量不同,Oracle是不会自动进行IO校准的,而需要DBA手工完成。
select * from v$io_calibration_status;--状态
select * from DBA_RSRC_IO_CALIBRATE;--校准结果
此时是空的;
那么如何使dop能够正常工作呢?
调用: dbms_resource_manager.calibrate_io这个过程;在运行 i/o 校准之前, 请确保满足以下要求:
1必须授予用户权限SYSDBA
2 timed_statistics必须设置为TRUE
show parameter timed_statistics
NAME TYPE VALUE
------------------------------------ ----------- -----
timed_statistics boolean TRUE3必须启用异步 i/o
show parameter disk_asy
NAME TYPE VALUE
------------------------------------ ----------- ------
disk_asynch_io boolean TRUE
4通过运行以下查询, 确保为数据文件启用了异步 i/o:
COL NAME FORMAT A50
SELECT NAME,ASYNCH_IO FROM V$DATAFILE F,V$IOSTAT_FILE I
WHERE F.FILE#=I.FILE_NO
AND FILETYPE_NAME='Data File';--入参
desc dbms_resource_manager.calibrate_io
Parameter Type Mode Default?
------------------ -------------- ---- --------
NUM_PHYSICAL_DISKS BINARY_INTEGER IN Y
MAX_LATENCY BINARY_INTEGER IN Y
MAX_IOPS BINARY_INTEGER OUT
MAX_MBPS BINARY_INTEGER OUT
ACTUAL_LATENCY BINARY_INTEGER OUT
调用的过程如下:
declarelat integer;iops integer;mbps integer;
begindbms_resource_manager.calibrate_io(2,10,iops, mbps, lat);dbms_output.put_line ('max_iops = ' || iops);dbms_output.put_line ('latency = ' || lat);dbms_output.put_line('max_mbps = ' || mbps);end;
入参:
NUM_PHYSICAL_DISKS: 物理磁盘的大致数量
MAX_LATENCY:此工作负荷的平均延迟。当您需要特定的目标延迟时, 可以使用输入参数指定目标延迟 (为数据库块大小的 IO 请求指定最大可容忍延迟 (毫秒)
出参:
MAX_IOPS :
该过程将随机数据库块大小读取 (默认情况下为 8 KB) 从所有数据库实例中的所有数据文件中发出。此步骤提供了数据库可以维持的最大 IOPS (输出参数)。
ACTUAL_LATENCY:实际延迟数;
MAX_MBPS:这个应该是IO每秒的吞吐量每秒MB;
校验时间可能会比较长,我这里暗影精灵2,win10 1803版本,花了271.367s
启动校准之后,Oracle生成大量的IO操作,来判断存储的极限。这个过程也就是让我们了解当前IO架构的上限。
在执行过程中,我们可查看校准状态v$io_calibration_status。
I/O校准成功完成后,可以查看校准结果 DBA_RSRC_IO_CALIBRATE表;
select aa.STATUS,to_char(aa.CALIBRATION_TIME,‘yyyy-mm-dd hh24:mi:ss:ff3’) from v$io_calibration_status aa;
select to_char(aa.start_time, ‘yyyy-mm-dd hh24:mi:ss:ff3’) start_time,
to_char(aa.end_time, ‘yyyy-mm-dd hh24:mi:ss:ff3’) end_time,
aa.max_iops,
aa.max_mbps,
aa.max_pmbps,
aa.latency,
aa.num_physical_disks
from DBA_RSRC_IO_CALIBRATE aa;
IO校准后,Auto DOP就可以正常工作了;
Oracle自动化、智能化过程中,是需要提供很多辅助信息的。
Calibrate IO是一个重要方面。Oracle不进行自动的Calibrate IO统计量的原因大体有三个:
首先是Oracle并不知道实际磁盘的标准指标。
第二是Oracle校准过程生成很大的IO,如果不慎会引起很大产品问题。
第三是Disk IO性能不会经常性发生变化。
参考:https://blog.csdn.net/u010719917/article/details/53337048
https://docs.oracle.com/cd/E18283_01/server.112/e16638/iodesign.htm#insertedID3
Oracle 11g中的IO Calibrate(automatic DOP: skipped because of IO calibrate statistics are missing)相关推荐
- Oracle 11g中的IO Calibrate(IO校准)--Automatic Degree of Parallelism(DOP)
Oracle 11g中的IO Calibrate(IO校准)--Automatic Degree of Parallelism(DOP) Oracle 11g中的IO Calibrate(IO校准) ...
- Oracle 11g中的IO Calibrate(IO校准)
Oracle 11g中的IO Calibrate(IO校准).sql Oracle数据库发展到今天,"IO为王"已经是一种发展方向趋势.ExtraData一体机的重要特色之一就是最 ...
- Oracle 11g 中告警日志的位置
Oracle 11g 中告警日志的位置 首先介绍2个新名词 Automatic Diagnostic Repository (ADR)一个存放数据库诊断日志.跟踪文件的目录,称作ADR base,对应 ...
- oracle异常日志在哪,Oracle 11g 中告警日志的位置
首先介绍2个新名词 Automatic Diagnostic Repository (ADR)一个存放数据库诊断日志.跟踪文件的目录,称作ADR base,对应初始化参数DIAGNOSTIC_DEST ...
- ORACLE 11G中的ADR介绍:
直到今天,我才开始接触oracle 11g,先了解其新特性,以下这些是我的新特性读书笔记: 第一部分:(Automatic Diagnostic Repository)ADR 在oracle 11g中 ...
- 盘点 Oracle 11g 中新特性带来的10大性能影响
盘点 Oracle 11g 中新特性带来的10大性能影响 原创 2017-08-02 盖国强 数据和云 Oracle的任何一个新版本,总是会带来大量引人瞩目的新特性,但是往往在这些新特性引入之初,首先 ...
- oracle 11g中的自动维护任务管理
因为人员紧缺,最近又忙着去搞性能优化的事情,有时候真的是不想再搞这个事情,只是没办法,我当前的绩效几乎取决于这个项目的最终成绩,所以不管是人的事还是事的事,都得去让他顺利推进. 前段时间发生还有几台服 ...
- Oracle 11g中关于数据定义的思考
之前一直没有关注过Oracle中数据的保存方式,因为大部分使用的还是Oracle的关系型数据库存储内容的元数据.今天偶然看到一篇关于Oracle 11g的数据定义的描述,收集如下: 1.Oracle的 ...
- bak文件转oracle文件,如何在Oracle 11g中恢复.bak文件(How to restore .bak file in oracle 11g)...
如何在Oracle 11g中恢复.bak文件(How to restore .bak file in oracle 11g) 我有Oracle 11g备份文件(.bak文件)如何在Oracle 11g ...
最新文章
- 学会打败你的时间“窃贼”!!
- 【收藏】vuejs学习笔记github地址
- Another ORA-00600 internal error
- SAP CDS view里将Date和time连接成timestamp的函数
- oracle只匹配中文,Oracle 实现 一个关键字 匹配多个 字段
- WPF圆角按钮与触发颜色变化
- Jenkins 配置mirrors
- springboot 接入京东sdk_【第3期】Springboot:微信公众号分享quot;朋友圈quot;
- 最新彩虹DS仿小储云模板源码
- IT 架构测试之基础架构运维测试简介
- 金蝶K3案例教程成本报表
- 2.3两个列表或元组首尾相连
- 快速了解Mybatis Plus 的用法以及使用举例
- 马未都说收藏:陶瓷篇(18、19)五彩瓷、斗彩
- dev c++怎么设置断点_怎么在FTP中使用代理(FLASHFXP代理设置教程)
- IE 7打开网页慢解决方法
- 如何克服学习过程中的焦虑?
- 解决Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be include
- 【RTSP/RTP流媒体】10、编写简单的RTSP客户端
- 三个文本框自定义数字抽奖机
热门文章
- Error【1146】:Table ‘xxx.xxx‘ doesn‘t exist问题原因及解决方法
- 关于重要函数splice()的介绍以及运用
- 计算机应用基础是文管二级吗,计算机应用基础
- 聊一聊在移动互联网时代做一个桌面应用
- [FROM WOJ]#3805 OSU!
- 计算机毕设源码网站基于SpringBoot的阳光线上交友系统
- java获取当前年月日历_获取当前月日历
- Ubuntu下FastDFS的安装
- matlab计算数据MEA与RMSE误差指标
- 如何保住一个人一生的劳动果实