When we plan a RAC environment we need to define the throughput requirements early on the design phase, and then validate that our servers are able to perform at the required levels, even before we have create the RAC database.
When performance problems related to poor performance at the storage level are detected in a late implementation stage the number of variables may make the task to detect the bottleneck difficult, and the time to find a solution scarce.
There is a tool that can be used to validate that a configuration is capable to provide the throughput we expect from it, is called Orion and can be downloaded from this link:
The Orion install guide can be downloaded from the same page.
Orion can simulate the type of IO's an OLTP or DSS system does and provide detailed response times in terms of IOPS and MBPS.
Once Orion executable is unziped on a separate directory you will need to create a parameter file, ie: mystat.lun that contains the list of the luns to run on the test.
Be aware that any information there will be destroyed.
/dev/raw/raw1
/dev/raw/raw2
/dev/raw/raw3
A simple test can be run using the following parameters (note that testname and the lun parameter file must match):
Point 1 (small=0, large=0) of 22
Valid small 1 Valid large 1
Valid
ran (small): VLun = 0 Size = 8578870272
ran (small): Index = 0 Count = 10770 Avg Lat = 5.56
ran (small): nio=10770 nior=10770 niow=0 req w%=0 act w%=0
ran (small): my 1 oth 0 iops 179 size 8 K lat 5.56 ms bw = 1.40 MBps dur 59.93 s READ
And will be logged into the file mystat_trace.txt
Several output files will be generated as well:
total 2156
-rwxrwxrwx 1 root root 1914905 Aug 9 07:06 orion
-rwxrwxrwx 1 root root 233611 Aug 9 07:07 Orion_Users_Guide.pdf
-rwxrwxrwx 1 root root 42 Aug 9 07:17 mystat.lun
-rw-r--r-- 1 oracle oinstall 13350 Aug 9 08:52 mystat_trace.txt
-rw-r--r-- 1 oracle oinstall 698 Aug 9 08:52 mystat_summary.txt
-rw-r--r-- 1 oracle oinstall 260 Aug 9 08:52 mystat_mbps.csv
-rw-r--r-- 1 oracle oinstall 336 Aug 9 08:52 mystat_lat.csv
-rw-r--r-- 1 oracle oinstall 336 Aug 9 08:52 mystat_iops.csv
The csv files can be uploaded to a worksheet to produce graphical representations of the data collected.
In summary this is a great tool, worth to know it and use it. It is light, simple to use and free.
Comments (6)
Looks interesting. Does this just simulate Oracle type I/O without using the Oracle RDBMS engine?
Can this be used to prove an ASM implementation eg: I/O on raw devices?
Regards,
Posted by Mathew Butler | August 9, 2007 12:12 PM
Posted on August 9, 2007 12:12
Did the raw devices tested by raw devices need to be cleaned up using 'dd if=/dev/null of=<raw device> blocks =1000' before and after testing?
Posted by Lei Zeng | August 9, 2007 1:52 PM
Posted on August 9, 2007 13:52
Do you have any scripts or any way go to go about testing your apps from the oracle side?
Posted by LOU | August 15, 2007 10:47 AM
Posted on August 15, 2007 10:47
Is there any utility which will generate all the graphs from ORION generated CSV and other output file.Please tell me how to generate graphs?I know about excel can do it.but I want to know is there any other way.Thanks
Posted by Murtuja Khokhar | November 2, 2007 9:24 AM
Posted on November 2, 2007 09:24
How to generate graphs from orion generated files?
Posted by Murtuja Khokhar | November 5, 2007 4:25 AM
Posted on November 5, 2007 04:25
good afternoon and thank you for the blog,
I guess that the line
> orion -run simple -testname mystat -numdisks 3
should read
> orion -run simple -testname mystat -num_disks 3
regards,
eric
Posted by Eric Grancher | November 29, 2008 5:13 AM
Posted on November 29, 2008 05:13