您的位置:首页 > 数据库 > Oracle

利用Orion对Oracle进行压力测试

2016-06-22 17:26 519 查看
一. ORION 概述

1.1 ORION 说明
ORION (Oracle I/O Calibration Tool) 是校准用于 Oracle 数据库的存储系统 I/O 性能的独立工具。校准结果对于了解存储系统的性能有很大帮助,不仅可以找出影响 Oracle 数据库性能的问题,还能测量新数据库安装的大小。由于 ORION 是一个独立工具,用户不需要创建和运行 Oracle 数据库。

Orion的下载地址为:
http://www.oracle.com/technology/global/cn/software/tech/orion/index.html
 
为了尽可能地模拟 Oracle 数据库,ORION 使用和 Oracle 相同的 I/O 软件集生成一个合成的 I/O 负载。可以将 ORION 配置为生成很多 I/O 负载,包括一个模拟 OLTP 和数据仓库负载的 I/O 负载。

ORION 支持多种平台。将来还会增加对更多平台的支持。用户指南提供详细的使用文档,包括“入门”部分和疑难解答提示。在 ORION 中调用“-help”选项可以直接获取关于如何使用 ORION 的摘要。

注意,Oracle 不对 ORION提供支持。

 
优势:
1、不需要运行load runner以及配置大量的clinet
2、不需要运行oracle数据库,以及准备大量的测试数据
3、测试结果更具有代表性,如随机IO测试中,该软件可以让存储的命中率接近为0,而更仿真出了磁盘的真实的IOPS,而load runner很难做到这些,最终的磁盘IOPS需要换算得到。
4、可以根据需要定制一定比例的写操作(默认没有写操作),但是需要注意,如果磁盘上有数据,需要小心数据被覆盖掉。

 
缺点
1、到现在为止,无法指定自定义的总体的运行时间以及加压的幅度,这里完全是自动的.
2、无法进行一些自定义的操作类型,如表的扫描操作,装载测试等等,不过可以与oracle数据库结合起来达到这个效果.

二.Windows 下使用方法

2.1 在Orion的安装目录下新建dave.lun文件,在里面添加要测试的分区,比如:

\\.\D:

这里我们要对D盘进行测试。

2.2 执行orion命令。 

Orion有三个不同的等级,simple,normal,advance. 这个根据自己的需求来进行设置。 如:

C:\Program Files(x86)\Oracle\Orion>orion -runsimple -testname dave -num_disks 1

--注意这里的testname 参数,只需要写文件名就可以了,orion 会自动补上扩展名,如果写上扩展名,反而会报错

ORION: ORacle IONumbers -- Version 10.2.0.1.0

Test will takeapproximately 9 minutes

Larger cachesmay take longer

 

这里的testname 写我们之前配置的lun文件的名称, num_disks 是磁盘的数量。

 

2.3 查看结果
在orion的安装目录下,会生成几个文件:dave_iops.csv;dave_lat.csv;dave_mbps.csv; dave_summary.txt 和dave_trace.txt 文件。 我们可以看一下summary的内容。

三.Linux 下使用方法

3.1 解压缩ORION

       用root用户解压软件:
unzip orion_linux_x86-64.gz
解压完成后,生成ORION软件:orion_linux_x86-64

 

3.2 配置dave.lun 文件。如:

  /dev/sdc1

  /dev/sdd1

  /dev/sde1

  /dev/sdf1

 

3.3 执行orion命令:

    orion_linux_x86-64 -run simple -testname dave -num_disks 4
--注意这里的testname 参数,只需要写文件名就可以了,orion 会自动补上扩展名,如果写上扩展名,反而会报错

 

3.4 查看结果

四.其他的几个测试命令示例

4.1、数据库OLTP类型,假定IO类型全部是8K随机操作,压力类型,自动加压,从小到大,一直到存储压力极限

#./orion -run advanced -testname dave-num_disks 1 -size_small 8 -size_large 8 -type rand &

 

4.2、数据库吞吐量测试,假定IO全部是1M的序列性IO

#./orion -run advanced -testname mytest-num_disks 96 -size_small 1024 -size_large 1024 -type seq &

 

4.3、指定特定的IO类型与IO压力,如指定小IO为压力500的时候,不同大IO下的压力情况

#./orion -run advanced -testname mytest-num_disks 96 -size_small 8 -size_large 128 -matrix col -num_small 500 -typerand &

 

4.4、结合不同的IO类型,测试压力矩阵

#./orion -run advanced -testname mytest-num_disks 96 -size_small 8 -size_large 128 -matrix detailed -type rand &
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: