Oracle ORION
概念解析 | oracle tools | 2010.07.06
ORION(Oracle I/O Calibration Tool)是Oracle提供的,专门用于测试Oracle数据库存储I/O系统性能的工具。测试的结果可以用于了解存储系统的性能,也能发现影响数据库潜在的性能问题。
ORION可以直接从Oracle的官网网站下载:http://www.oracle.com/technology/software/tech/orion/index.html
ORION的使用非常简单,从官网上down下来的包直接解压就可以使用。
[ora10g@centos4 ~]$ gunzip orion_linux_x86.gz
[ora10g@centos4 ~]$ ls
orion_linux_x86
[ora10g@centos4 ~]$ ./orion_linux_x86 -help
ORION: ORacle IO Numbers — Version 11.1.0.7.0
ORION runs IO performance tests that model Oracle RDBMS IO workloads.
It measures the performance of small (2-32K) IOs and large (128K+) IOs
at various load levels.Each Orion data point is done at a specific
mix of small and large IO loads sustained for a duration.Anywhere
from a single data point to a two-dimensional array of data points can
be tested by setting the right options.
An Orion test consists of data points at various small and large IO
load levels.These points can be represented as a two-dimensional
matrix: Each column in the matrix represents a fixed small IO load.
Each row represents a fixed large IO load.The first row is with no
large IO load and the first column is with no small IO load.An Orion
test can be a single point, a row, a column or the whole matrix.
The ‘run’ parameter is the only mandatory parameter. Defaults
are indicated for all other parameters.For additional information on
the user interface, see the Orion User Guide.
is a filename prefix.By default, it is “orion”.It can be
specified with the ‘testname’ parameter.
.lun should contain a carriage-return-separated list of LUNs
The output files for a test run are prefixed by _ where
date is “yyyymmdd_hhmm”.
The output files are:
__summary.txt -Summary of the input parameters along with
min. small latency, max large MBPS
and/or max. small IOPS.
__mbps.csv – Performance results of large IOs in MBPS
__iops.csv – Performance results of small IOs in IOPS
__lat.csv – Latency of small IOs
__tradeoff.csv – Shows large MBPS / small IOPS
combinations that can be achieved at
certain small latencies
_trace.txt – Extended, unprocessed output
WARNING: IF YOU ARE PERFORMING WRITE TESTS, BE PREPARED TO LOSE ANY DATA STORED
ON THE LUNS.
Mandatory parameters:
run
Type of workload to run (simple, normal, advanced, dss, oltp)
simple – tests random 8K small IOs at various loads,
then random 1M large IOs at various loads.
normal – tests combinations of random 8K small
IOs and random 1M large IOs
advanced – run the workload specified by the user
using optional parameters
dss – run with random 1M large IOs at increasing loads
to determine the maximum throughput
oltp – run with random 8K small IOs at increasing loads
to determine the maximum IOPS
Optional parameters:
testname
Name of the test run
num_disks
Number of disks (physical spindles). Default is
the number of LUNs in .lun
size_small
Size of small IOs (in KB) – default 8
size_large
Size of large IOs (in KB) – default 1024
type
Type of large IOs (rand, seq) – default rand
rand – Random large IOs
seq -Sequential streams of large IOs
num_streamIO
Number of concurrent IOs per stream (only if type is
seq) – default 4
simulate
Orion tests on a virtual volume formed by combining the
provided volumes in one of these ways (default concat):
concat – A serial concatenation of the volumes
raid0 – A RAID-0 mapping across the volumes
write
Percentage of writes (SEE WARNING ABOVE) – default 0
cache_size
Size *IN MEGABYTES* of the array’s cache.
Unless this option is set to 0, Orion does a number
of (unmeasured) random IO before each large sequential
data point.This is done in order to fill up the array
cache with random data.This way, the blocks from one
data point do not result in cache hits for the next
data point.Read tests are preceded with junk reads
and write tests are preceded with junk writes.If
specified, this ‘cache warming’ is done until
cache_size worth of IO has been read or written.
Default behavior: fill up cache for 2 minutes before
each data point.
duration
Duration of each data point (in seconds) – default 60
num_small
Number of outstanding small IOs (only if matrix is
point, col, or max) – no default
num_large
For random, number of outstanding large IOs.
For sequential, number of streams (only if matrix is
point, row, or max) – no default
matrix
An Orion test consists of data points at various small
and large IO load levels.These points can be
represented as a two-dimensional matrix: Each column
in the matrix represents a fixed small IO load.Each
row represents a fixed large IO load.The first row
is with no large IO load and the first column is with
no small IO load.An Orion test can be a single point,
a row, a column or the whole matrix, depending on the
matrix option setting below (default basic):
basic – test the first row and the first column
detailed – test the entire matrix
point – test at load level num_small, num_large
col – varying large IO load with num_small small IOs
row – varying small IO load with num_large large IOs
max – test varying loads up to num_small, num_large
verbose
Prints tracing information to standard output if set.
Default — not set
Examples
For a preliminary set of data
-run simple
For a basic set of data
-run normal
To evaluate storage for an OLTP database
-run oltp
To evaluate storage for a data warehouse
-run dss
To generate combinations of 32KB and 1MB reads to random locations:
-run advanced
-size_small 32 -size_large 1024 -type rand-matrix detailed
To generate multiple sequential 1MB write streams, simulating 1MB RAID0 stripes
-run advanced
-simulate RAID0 -stripe 1024 -write 100 -type seq
-matrix col -num_small 0
ORION的执行需要一个参数文件,用于指定测试的磁盘。
[ora10g@centos4 ~]$ cat /dev/sdb1 > test.lun
[ora10g@centos4 ~]$ cat /dev/sdb2 >> test.lun
配置好参数文件就可以开始进行测试啦!
[ora10g@centos4 ~]$ ./orion_linux_x86 -run simple -testname test -num_disks 1
ORION: ORacle IO Numbers — Version 11.1.0.7.0
test_20100706_2144
Test will take approximately 9 minutes
Larger caches may take longer
测试的结果是生成一堆的文件,其中,trace文件详细记录了存储在各种压力下的性能表现,从这些文件我们可以进行存储的性能分析。
[ora10g@centos4 ~]$ more test_20100706_2144_*
test_20100706_2144_iops.csv test_20100706_2144_summary.txt
test_20100706_2144_lat.csvtest_20100706_2144_trace.txt
test_20100706_2144_mbps.csv
也可以针对存储进行更高级的测试。
192.168.2.1 p630a_stb
192.168.2.2p630b_stb
192.168.3.66p630a_boot/主机1ip
192.168.3.67p630b_boot /主机2ip
192.168.5.100 p630a_svc
http://www-31.ibm.com/cn/downloa ... ss/HACMP54/main.swf
[ora10g@centos4 ~]$ ./orion_linux_x86 run advanced -testname test -num_disks 1
-simulate raid0 -stripe 1024 -write 25 -type seq -matrix col -num_small 0
http://www.ibm.com/developerwork ... pinst/section4.html
http://www.oracle.com/webfolder/ ... ps/orion/index.html
[ 本帖最后由 taoy_2008 于 2011-6-1 00:01 编辑 ]
|