利用dbms_resource_manager.calibrate_io给磁盘做基准测试

除了使用Oracle提供的Orion工具做基准测试外,还可以利用11g提供的一个存储过程 DBMS_RESOURCE_MANAGER.CALIBRATE_IO 给磁盘做基准测试。
SQL如下:

SQL> 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;
/
SQL>   2    3    4    5    6    7    8    9   10   11  

max_iops = 1205758
latency = 0
max_mbps = 24515

PL/SQL procedure successfully completed.

输出信息中的max_iops=1205758,说明IO子系统的每秒IO请求次数是1205758次,latency=0,说明I/O子系统的延迟是0ms。max_mbps=24515,说明每秒的最大处理能力是24515MB。

在calibrate_io执行时可以查看其状态

SQL>  select * from V$IO_CALIBRATION_STATUS;

STATUS                     CALIBRATION_TIME
-------------------------- ------------------------------
IN PROGRESS                11-APR-22 12.39.59.254 PM

在dbms_resource_manager.calibrate_io执行完后可以查看其结果

SQL>  set lines 200
SQL>  col START_TIME format a30 
SQL> col END_TIME format a30
SQL>  select * from DBA_RSRC_IO_CALIBRATE;

START_TIME                     END_TIME                         MAX_IOPS   MAX_MBPS  MAX_PMBPS    LATENCY NUM_PHYSICAL_DISKS
------------------------------ ------------------------------ ---------- ---------- ---------- ---------- ------------------
11-APR-22 12.30.28.943630 PM   11-APR-22 12.39.59.254063 PM      1205758      24515       6501          0                  2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注