zoukankan      html  css  js  c++  java
  • Oracle Orion tool check io(ORACLE Orion 工具查看以及校验IO)

    文档主要来自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.



  • 相关阅读:
    Json对象与Json字符串互转(4种转换方式)
    Web.config配置文件详解
    jQuery BlockUI Plugin Demo 6(Options)
    jQuery BlockUI Plugin Demo 5(Simple Modal Dialog Example)
    jQuery BlockUI Plugin Demo 4(Element Blocking Examples)
    jQuery BlockUI Plugin Demo 3(Page Blocking Examples)
    jQuery BlockUI Plugin Demo 2
    <configSections> 位置引起的错误
    关于jQuery的cookies插件2.2.0版设置过期时间的说明
    jQuery插件—获取URL参数
  • 原文地址:https://www.cnblogs.com/hmwh/p/8670673.html
Copyright © 2011-2022 走看看