Oracle ORION IO 测试工具:
ORION (Oracle I/O Calibration Tool)
是校准用于 Oracle 数据库的存储系统 I/O 性能的独立工具。校准结果对于了解存储系统的性能有很大帮助,不仅可以找出影响 Oracle
数据库性能的问题,还能测量新数据库安装的大小。由于 ORION 是一个独立工具,用户不需要创建和运行 Oracle 数据库。
为了尽可能地模拟 Oracle 数据库,ORION 使用和 Oracle 相同的 I/O 软件集生成一个合成的 I/O 负载。可以将 ORION
配置为生成很多 I/O 负载,包括一个模拟 OLTP 和数据仓库负载的 I/O 负载。
ORION 支持多种平台。将来还会增加对更多平台的支持。用户指南提供详细的使用文档,包括“入门”部分和疑难解答提示。在 ORION
中调用“-help”选项可以直接获取关于如何使用 ORION 的摘要。
Orion的下载地址为:
http://www.oracle.com/technology/global/cn/software/tech/orion/index.html
该软件的优势:
1、不需要运行load runner以及配置大量的clinet
2、不需要运行oracle数据库,以及准备大量的测试数据
3、测试结果更具有代表性,如随机IO测试中,该软件可以让存储的命中率接近为0,而更仿真出了磁盘的真实的IOPS,而load
runner很难做到这些,最终的磁盘IOPS需要换算得到。
4、可以根据需要定制一定比例的写操作(默认没有写操作),但是需要注意,如果磁盘上有数据,需要小心数据被覆盖掉。
需要进入到安装路径进行测试,如下:
C:/Program Files/Oracle/Orion>
Windows 下使用方法:
1.在Orion的安装目录下新建dave.lun 文件,在里面添加要测试的分区,比如:
//./D:
这里我们要对D盘进行测试。
2.执行orion命令。 Orion有三个不同的等级,simple,normal,advance. 这个根据自己的需求来进行设置。 如:
C:/Program Files (x86)/Oracle/Orion>orion -run simple -testname dave
-num_disks 1
ORION: ORacle IO Numbers -- Version 10.2.0.1.0
Test will take approximately 9 minutes
Larger caches may take longer
这里的testname 写我们之前配置的lun文件的名称, num_disks 是磁盘的数量。
3.查看结果
在orion的安装目录下,会生成几个文件:dave_iops.csv;dave_lat.csv;dave_mbps.csv;
dave_summary.txt 和dave_trace.txt 文件。
我们可以看一下summary的内容。因为其测试结果是csv文件,所以可以很方便的根据结果在excle中绘制压力曲线。
Linux 下使用方法:
1.和windows下的一致。 首先是配置dave.lun 文件。如:
/dev/sdc1
/dev/sdd1
/dev/sde1
/dev/sdf1
2.执行orion命令:
orion -run simple -testname dave -num_disks 4
3.查看结果。
其他几个测试命令:
1、数据库OLTP类型,假定IO类型全部是8K随机操作,压力类型,自动加压,从小到大,一直到存储压力极限
#./orion -run advanced -testname dave -num_disks 1 -size_small 8
-size_large 8 -type rand &
2、数据库吞吐量测试,假定IO全部是1M的序列性IO
#./orion -run advanced -testname mytest -num_disks 96 -size_small 1024
-size_large 1024 -type seq &
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 -type rand &
4、结合不同的IO类型,测试压力矩阵
#./orion -run advanced -testname mytest -num_disks 96 -size_small 8
-size_large 128 -matrix detailed -type rand &
from:http://hi.baidu.com/firefly5002/blog/item/4ab89b9a0a4b1ea7c8eaf474.html
############################################################
orion,一款由Oracle公司提供,专门用于模拟数据库运行机制来测试存储的优秀IO存储测试软件,可以在不运行oracle数据库的情况下,仿真OLTP随机操作(测试IOPS)或者是OLAP连续性操作(测试吞吐量)。
先看看此软件的下载地址与说明:
ORION is the Oracle I/O Numbers Calibration Tool designed to simulate Oracle I/O workloads - Without having to create and run an Oracle database - Using the Oracle database's I/O libraries - Using small I/Os to simulate OLTP workloads - Using large I/Os to simulate data warehouses ORION is useful for understanding the performance capabilities of a storage system, either to uncover performance issues or to size a new database installation. The Users Guide contains a Getting Started section, detailed usage documentation, and trouble-shooting tips. Please note that ORION is not supported by Oracle. Download the files: ·orion_AIX64.gz (11,670,726 bytes) ·orion_solaris64_sparc.gz (898,929 bytes) ·orion_solaris_x8664.gz (655,975 bytes) ·orion_linux_em64t.gz (767,380 bytes) ·orion10.2_linux.gz (630,354 bytes) ·orion10.2_windows.msi (7,865,856 bytes) ·Users Guide
可以见到,此软件已经支持多个OS环境,遗憾的是,Oracle并不对该软件提供服务支持,不过,这并不影响该软件的正常使用,从我的测试结果来看,该软件真的是很不错的存储测试软件。
下载到的软件,已经分别编译好,不需要任何编译即可以在各自的OS环境中运行,这个比很多压力测试软件需要另外重新编译好多了,也方便多了,如,在AIX环境下,在解压的目录下,运行./orion -help,即可以看到该软件的详细帮助。
该软件支持三种运行方式
Simple:简单的测试随机的小IO(默认8k)以及大IO(默认1024K),这个方式对初次运行该软件,或者大致了解存储基本特性比较有用。
Normal:可以组合不同的IO类型,但是还是不能自定义IO大小
Advanced:可以支持多种高级选项,如IO大小,压力大小,IO类型,测试方式等等
以及两种不同的压力方式
典型的OLTP环境:选择随机的小IO,测试存储所能支持的最大IOPS以及响应时间
典型的OLAP环境:选择顺序的大IO,测试存储所能支持的最大吞吐量以及响应时间
该软件的运行只需要一个配置文件,<testname>.lun,配置了测试所需要用到的磁盘信息,而分别返回如下信息:
<testname>_iops.csv:不同压力类型的IOPS值
<testname>_mbps.csv:不同压力类型的吞吐量
<testname>_lat.csv:不同压力类型下的响应时间
<testname>_summary.txt:测试结果的汇总信息
我在分别运行load runner+oracle模拟数据库活动以及仅仅是运行该软件模拟数据库的活动中,可以明显的发现该软件的优势所在:
1、不需要运行load runner以及配置大量的clinet
2、不需要运行oracle数据库,以及准备大量的测试数据
3、测试结果更具有代表性,如随机IO测试中,该软件可以让存储的命中率接近为0,而更仿真出了磁盘的真实的IOPS,而load runner很难做到这些,最终的磁盘IOPS需要换算得到。
4、可以根据需要定制一定比例的写操作(默认没有写操作),但是需要注意,如果磁盘上有数据,需要小心数据被覆盖掉。
当然,也有其缺点
1、到现在为止,无法指定自定义的总体的运行时间以及加压的幅度,这里完全是自动的
2、无法进行一些自定义的操作类型,如表的扫描操作,装载测试等等,不过可以与oracle数据库结合起来达到这个效果
下面,我就给出几个具体的例子说明其操作
1、数据库OLTP类型,假定IO类型全部是8K随机操作,压力类型,自动加压,从小到大,一直到存储压力极限
#nohup ./orion -run advanced -testname mytest -num_disks 96 -size_small 8 -size_large 8 -type rand &
2、数据库吞吐量测试,假定IO全部是1M的序列性IO
#nohup ./orion -run advanced -testname mytest -num_disks 96 -size_small 1024 -size_large 1024 -type seq &
3、指定特定的IO类型与IO压力,如指定小IO为压力500的时候,不同大IO下的压力情况
#nohup ./orion -run advanced -testname mytest -num_disks 96 -size_small 8 -size_large 128 -matrix col -num_small 500 -type rand &
4、结合不同的IO类型,测试压力矩阵
#nohup ./orion -run advanced -testname mytest -num_disks 96 -size_small 8 -size_large 128 -matrix detailed -type rand &
因为其测试结果是csv文件,所以可以很方便的根据结果在excle中绘制压力曲线,如某存储的压力测试,根据Orion的测试结果绘得的IOPS与响应时间关系表:
其中,横轴是响应时间,纵轴是IOPS值,表示了在不同的IOPS情况下,单个IO的平均响应时间分别是多少。
这个testname.lun配置文件的格式是什么样的呢?
如:
/dev/rhdiskpower5
/dev/rhdiskpower6
/dev/rhdiskpower7
……
http://www.ixdba.com/html/y2007/m06/125-orion-storage-test.html
from:http://digifish.bokee.com/viewdiary.16709148.html
############################################################################