文档主要来自oracle官方文档performance 8.3章节

Oracle数据库提供了Orion,一种 I/O校准工具。Orion是预测Oracle数据库性能的工具,无需安装Oracle或创建数据库。与其他 I/O校准工具不同,Oracle Orion专门用于使用与Oracle相同的 I/O软件堆栈来模拟Oracle数据库 I/O工作负载。Orion还可以模拟Oracle自动存储管理所执行的条带化的效果。

1、先决条件
在运行 I/O 校准之前,请确保满足以下要求:
用户必须被授予SYSDBA特权
timed_statistics 必须设置为 TRUE
异步 I/O 必须启用

当使用文件系统,异步 I/O 可以通过设置来启用FILESYSTEMIO_OPTIONS初始化参数SETALL。

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';

2、运行 I/O 校准

Oracle数据库的I/O校准功能可以使用DBMS_RESOURCE_MANAGER.CALIBRATE_IO程序。
此过程向数据库文件发出I/O密集型只读工作负载(由1兆字节的随机I/O组成),以确定最大IOPS(每秒I/O请求)和MBPS(兆字节I/O每秒),可以由存储子系统维持

I/O校准分两步进行:
2.1 在 I/O 校准的第一步中DBMS_RESOURCE_MANAGER.CALIBRATE_IO过程时,过程将发出随机数据库块大小的读取(默认情况下,为8 KB),以便从所有数据库实例的所有数据文件中读取。
此步骤在输出参数max_iops中提供数据库可以承受的最大IOPS 。该值max_iops是OLTP数据库的重要指标。输出参数actual_latency为此工作负载提供平均延迟。
当需要特定的目标延迟时,可以使用输入参数指定目标延迟max_latency(指定数据库块大小的IO请求的最大可容忍延迟(以毫秒为单位))。

2.2 校准的第二步使用DBMS_RESOURCE_MANAGER.CALIBRATE_IO过程问题随机,1 MB读取所有数据库实例中的所有数据文件。
第二步产生输出参数max_mbps,该参数指定数据库可以承受的I / O的最大MBPS。这一步为数据仓库提供了一个重要的指标。
如果用户提供num_physical_disks输入参数(指定数据库存储系统中物理磁盘的大致数量),那么校准运行更有效。
由于运行 I/O工作负载的开销,I/O校准只能在数据库处于空闲状态或在非高峰时段执行,以尽量减少I / O工作负载对正常数据库工作负载的影响。
要运行 I/O 校准并评估Oracle数据库使用的存储子系统的I/O功能,请使用DBMS_RESOURCE_MANAGER.CALIBRATE_IO程序。

当运行DBMS_RESOURCE_MANAGER.CALIBRATE_IO程序,请考虑以下事项:
1、一次只能在使用相同存储子系统的数据库上运行一次校准。如果同时在使用相同存储子系统的单独数据库上运行校准,则校准将失败。
2、停顿数据库以最小化实例上的I/O。
3、 对于Oracle Real Application Clusters(Oracle RAC)配置,确保打开所有实例以跨节点校准存储子系统。
4、对于Oracle Real Application Clusters(Oracle RAC)数据库,同时从所有实例生成工作负载。
5、 该num_physical_disks输入参数是可选。通过将num_physical_disks参数设置为数据库存储系统中物理磁盘的近似数量,校准可以更快,更准确。
6、 在某些情况下,数据文件可以使用异步I/O,但用于提交异步I/O 的I/O子系统可能会最大化,并且I/O校准无法继续。在这种情况下,请参阅端口特定文档以获取有关检查系统上异步I/O的最大限制的信息。
在I/O校准过程中的任何时候,您都可以在V$IO_CALIBRATION_STATUS视图中查询校准状态。I/O校准成功完成后,您可以在DBA_RSRC_IO_CALIBRATE表格中查看结果。
select * from V$IO_CALIBRATION_STATUS;

select * from DBA_RSRC_IO_CALIBRATE;

官方模板如下:

SET SERVEROUTPUT ON
DECLARE
lat INTEGER;
iops INTEGER;
mbps INTEGER;
BEGIN
DBMS_RESOURCE_MANAGER.CALIBRATE_IO (<DISKS>, <MAX_LATENCY>, iops, mbps, lat);
DBMS_OUTPUT.PUT_LINE ('max_iops = ' || iops);
DBMS_OUTPUT.PUT_LINE ('latency = ' || lat);
dbms_output.put_line('max_mbps = ' || mbps);
end;
/

我测试的如下:

SET SERVEROUTPUT ON
DECLARE
lat INTEGER;
iops INTEGER;
mbps INTEGER;
BEGIN
DBMS_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;
/

结果如下:

max_iops = 13032
latency = 10
max_mbps = 253

PL/SQL procedure successfully completed.

Oracle Orion tool check io(ORACLE Orion 工具查看以及校验IO)的更多相关文章

  1. 介绍Oracle自带的一些ASM维护工具 (kfod/kfed/amdu)

    1.前言 ASM(Automatic Storage Management)是Oracle主推的一种面向Oracle的存储解决方式,它是一个管理卷组或者文件系统的软件.眼下已经被RAC环境广泛使用,可 ...

  2. 【ASM】介绍Oracle自带的一些ASM维护工具 (kfod/kfed/amdu)

    转自:http://blog.csdn.net/wenzhongyan/article/details/47043253 非常感谢作者的文章,很有价值!至此转载,非常感谢 1.前言 ASM(Autom ...

  3. [置顶] Oracle 11g R2 RAC:使用 srvctl 工具管理 service 资源

    1.使用 srvctl 工具创建 service 资源 srvctl add service -d db_unique_name -s service_name {-r "preferred ...

  4. One simple health check for oracle with sql

    There are some sqls which is used for check the oracle database's health condition. ------numbers of ...

  5. Oracle 11g dataguard check RTA(real time apply)

    Oracle 11g dataguard check RTA(real time apply) 2017年8月24日 16:38 环境:oracle 11.2.0.1 OEL 5.8 注:以下操作都在 ...

  6. 例举在诊断Oracle性能问题时,常用的工具、方法

    例举在诊断Oracle性能问题时,常用的工具.方法 解答: 1)简单一点的可以用toad及dbartisan这样的工具. 2)纯做性能监测,比较出色的有spolight和emc的I3,这两个软件都比较 ...

  7. 在代码生成工具Database2Sharp中使用ODP.NET(Oracle.ManagedDataAccess.dll)访问Oracle数据库,实现免安装Oracle客户端,兼容32位64位Oracle驱动

    由于我们开发的辅助工具Database2Sharp需要支持多种数据库,虽然我们一般使用SQLServer来开发应用较多,但是Oracle等其他数据库也是常用的数据库之一,因此也是支持使用Oracle等 ...

  8. Linux 上Oracle RAC 10g 升级到 Oracle RAC 11g

    了解如何在 Oracle Enterprise Linux 5 上逐步将 Oracle RAC 10g 第 2 版升级到 Oracle RAC 11g. Oracle 数据库 11g(即,新一代网格计 ...

  9. 【转】:Oracle Linux6.9下安装Oracle 11.2.0.4.0及psu补丁升级

    为方便截图,本文操作都在vmware虚拟机上完成. 目录: 1.操作系统安装 2.数据库安装 3.PSU补丁升级卸载   part1 操作系统安装 Oracle (Enterprise) Linux ...

随机推荐

  1. 【mongodb系统学习之七】mongodb的关闭

    七.mongodb的关闭: 1).直接根据进程id杀死mongodb进程,如图(注意,kill -9要慎用,这个是强制关闭进程,可能导致文件损坏,尽量不要用,可以直接kill不加参数): 2).如果不 ...

  2. 微信小程序之公共函数引入

    // 加载配置文件 const config = require('../config.js'); module.exports = { //提醒弹框 REMIND:function(that = ' ...

  3. Struts2(七) Struts2访问Servlet的API

    当接受表单参数,向页面保持数据时.要用到Struts访问Servlet 的API .下面只做参考,有错误或不同意见可以发送邮箱2440867831@qq.com  .建议大家看struts文档,源代码 ...

  4. T470p VS 2017 上运行 VS 2015 + Qt 5.6.2 + GLSL 400

    vs 2017 的qt设置可以按照这篇文章 注意,必须使用qt的安装程序进行安装,否则会出现意想不到的问题(不要简单地把qt的文件拷贝过来..血的教训) 显卡的问题 好不容易编译通过了,一运行报了一个 ...

  5. intra调用order

    response = orderMessageService.apply(mdpRequest[A1] ); public interface OrderMessageService[A2] { pu ...

  6. (luogu P1383)高级打字机

    高级打字机 题目链接 https://www.luogu.org/problemnew/show/P1383 背景 无聊中.. 随便在luogu上rand到了一道题 从此走上不归路 主席树是我暑假的时 ...

  7. Bzoj3930: [CQOI 2015] 选数 & COGS2699: [CQOI 2015] 选数加强版

    题面 Bzoj COGS加强版 Sol 非加强版可以枚举AC这里不再讲述 设\(f(i)\)表示在\([L, H]\)取\(N\)个,\(gcd为i\)的方案数 \(F(i)=\sum_{i|d}f( ...

  8. 版本控制-Git对象

    Git对象 版本控制在于文件的控制,git的控制方法在于为每个文件生成(key,object)的结构.git利用sha-1加密算法,对每一个文件生成一个唯一的字符序列(明文大小不超过2^64位,对于普 ...

  9. MySQL的sum()函数

    如下图,这是一个关于用户参加活动,每个活动会给这位用户评分的一个表: 用户1参加了A活动,评分100: 用户2参加了B活动,评分98,又参加了D活动,评分10: 用户3参加了C活动,评分99 需求:把 ...

  10. 网络防火墙和NAT地址转换

    网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...