123
 123

Tip: 看不到本站引用 Flickr 的图片? 下载 Firefox Access Flickr 插件 | AD: 订阅 DBA notes --

2018-11-08 Thu

20:11 Where / Having (1 Bytes) » Oracle Scratchpad
A

2018-11-06 Tue

20:44 使用 DBMS_RESOURCE_MANAGER.CALIBRATE_IO 测试I/O性能 (5527 Bytes) » Oracle Life

作者:eygle 发布在 eygle.com

在 Oracle 11g 中,数据库提供了 DBMS_RESOURCE_MANAGER.CALIBRATE_IO 过程,可以用于对当前数据库实例的I/O性能进行测试。

通过这个测试,可以让我们对数据库环境的IO能力获得一个基准的指标。

DBMS_RESOURCE_MANAGER.CALIBRATE_IO的参数如下:

DBMS_RESOURCE_MANAGER.CALIBRATE_IO (
   num_physical_disks      IN  PLS_INTEGER DEFAULT 1,
   max_latency             IN  PLS_INTEGER DEFAULT 20,
   max_iops                OUT PLS_INTEGER,
   max_mbps                OUT PLS_INTEGER,
   actual_latency          OUT PLS_INTEGER); 

可以使用如下方法进行调用测试:

SET SERVEROUTPUT ON
DECLARE
  lat  INTEGER;
  iops INTEGER;
  mbps INTEGER;
BEGIN
-- DBMS_RESOURCE_MANAGER.CALIBRATE_IO (<DISKS>, <MAX_LATENCY>, iops, mbps, lat);
   DBMS_RESOURCE_MANAGER.CALIBRATE_IO (1, 100, 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参数根据当前系统中的disk个数进行设置。

以下是在我的云上环境测试得到的数据:

SQL> l

1 DECLARE

2 lat INTEGER;

3 iops INTEGER;

4 mbps INTEGER;

5 BEGIN

6 -- DBMS_RESOURCE_MANAGER.CALIBRATE_IO (<DISKS>, <MAX_LATENCY>, iops, mbps, lat);

7 DBMS_RESOURCE_MANAGER.CALIBRATE_IO (1, 100, iops, mbps, lat);

8

9 DBMS_OUTPUT.PUT_LINE ('max_iops = ' || iops);

10 DBMS_OUTPUT.PUT_LINE ('latency = ' || lat);

11 DBMS_OUTPUT.PUT_LINE ('max_mbps = ' || mbps);

12* end;

SQL> /

max_iops = 2215356

latency = 0

max_mbps = 30084

PL/SQL procedure successfully completed.

相关文章|Related Articles