快捷搜索:

开发工具:使用Orion校准检查I/O

简介

Oracle对Linux操作系统支持已经有很长一段光阴了,也宣布了企业版Linux,以致有一个成熟的团队专门在开拓Linux对象,此中一个对象便是Orion,纵然它现在是Beta版本,但我们盼望Oracle终极能将它的企业版Linux做得异常强壮,以致能够实现自我测试、自我调剂。

Orion:它究竟是什么?

Orion是一个I/O度量测试对象,这个对象是做容量筹划和反省存储 style="COLOR: #000000" href="http://storage.it168.com/" target=_blank>存储的抱负选择,Orion被设计为模拟应用相同的Oracle软件栈负载,今朝支持下面的负载类型:

小型随机I/O:假如你在测试一个OLTP数据库,那这是最佳的选择,Orion孕育发生已知百分比的读和写、给定I/O大年夜小和给定的I/O数量的随机I/O负载。

大年夜型继续读:平日,DSS(决策支持系统)和数据仓库利用法度榜样、大年夜量复制、数据装载、备份和规复这些活动归入这类范畴。

大年夜型随机读:继续流同时造访磁盘,磁盘条带(即RAID),继续流是跨多块磁盘的,是以在磁盘级你将会看到多个随机I/O流。

混杂负载:一组小型随机I/O和大年夜型继续I/O或更大年夜型随机I/O,让你可以模拟固定随机读/写的OLTP负载和512KB备份继续流负载。

Orion可以在哪里测试

DAS:Orion已经在DAS(直接附加存储)上颠末适当的测试了,实际上,我们现在用的便是DAS,我有一个迈拓外部驱动器和两个节点,无任何Oracle RAC数据库。

SAN:只要LUN映射到本地设备,Orion就可以测试它。

NAS:确定在运行Orion之前初始化数据文件。

开始测试

首先从Oracle网站高低载软件。

解压到你指定的位置,我将其解压到Oracle Enterprise Linux 5 GA的tmp文件夹下,在Linux下你必要gunzip orion10.2_linux.gz,在Windows下你只必要运行MSI文件即可。

创建一个文件:我们创建了一个文件11gtest.lun,并将它添加到共享磁盘上,我们将用与Oracle 11g ASM和OCR文件。

将共享磁盘添加到文件中,我们添加了以下磁盘:

/dev/sdc1

/dev/sdd1

/dev/sde1

/dev/sdf1

应用dd敕令反省所有选择的卷或磁盘,输入man dd查看其语法。

[root@vm11g01 dev]# dd if=/dev/sdc1 of=/dev/null bs=32k count=1024

1024+0 records in

1024+0 records out

33554432 bytes (34 MB) copied, 0.92155 seconds, 36.4 MB/s

反省你的平台查看是否已经为异步I/O安装了需要的库,libaio这个库应该安装在Oracle Linux版本下,Windows自动支持异步I/O.

Ok,统统就绪,我们将应用下面的敕令启动测试:

[root@vm11g01 tmp]# ./orion -run simple -testname 11gtest -num_disks 4

ORION: ORacle IO Numbers -- Version 10.2.0.1.0

Test will take approximately 30 minutes

Larger caches may take longer

现在发生的是I/O负载水平并记录到输出文件中,统共孕育发生了多个输出文件:

1.11gtest_summary 包括下面的数据输入参数,最大年夜吞吐量,最大年夜I/O速度和最小等待:

ORION VERSION 10.2.0.1.0

Commandline:

-run simple -testname 11gtest -num_disks 4

This maps to this test:

Test: 11gtest

Small IO size: 8 KB

Large IO size: 1024 KB

IO Types: Small Random IOs, Large Random IOs

Simulated Array Type: CONCAT

Write: 0%

Cache Size: Not Entered

Duration for each Data Point: 60 seconds

Small Columns:, 0

Large Columns:, 0, 1, 2, 3, 4, 5, 6, 7, 8

Total Data Points: 29

Name: /dev/sdc1 Size: 536854528

Name: /dev/sdd1 Size: 213893120

Name: /dev/sde1 Size: 4293563904

Name: /dev/sdf1 Size: 4293563904

4 FILEs found.

Maximum Large MBPS=34.47 @ Small=0 and Large=2

Maximum Small IOPS=185 @ Small=17 and Large=0

Minimum Small Latency=7.45 @ Small=1 and Large=0

2.11gtest_mbps.csv 这个文件包括大年夜型随机/继续负载的数据传输速度(MBPS),他们包括所有CSV文件(二维数据),你必须要手工导入才能得到图形数据,或者保存为excel文件,然后绘制成图表,它看起来象什么呢?

Large/Small,0,1,2,3,4,5,6,7,8,9,10,11,

12,13,14,15,16,17,18,19,20

1,28.91

2,34.47

3,34.22

4,33.23

5,31.90

6,34.01

7,32.96

8,33.46

3.11gtest_iops.csv 这个文件包括小型随机负载I/O吞吐量结果,我们来看一看这个文件的内容:

Large/Small,1,2,3,4,5,6,7,8,9,10,11,

12,13,14,15,16,17,18,19,20

0,134,153,160,170,170,169,176,180,161,181,179,

178,183,178,177,182,185,179,173,172

1

2

3

4

5

6

7

8

4.11gtest_lat.csv 小型随机负载等待结果,示例数据:

Large/Small,1,2,3,4,5,6,7,8,9,10,11,

12,13,14,15,16,17,18,19,20

0,7.45,13.01,18.72,23.52,29.34,35.34,39.72,44.23,55.63,55.08,61.41,

67.13,70.80,78.50,84.43,87.84,91.72, 100.50, 109.49, 116.13

1

2

3

4

5

6

7

8

5.11gtest_trace file:这个文件包括所有未加工的数据,开始和结尾如下:

TEST START

Point 1 (small=0, large=0) of 29

Valid small 1 Valid large 1

Valid

ran (small): VLun = 0 Size = 9337875456

ran (small): Index = 0Count = 8048Avg Lat =7.45

ran (small): nio=8048 nior=8048 niow=0 req w%=0 act w%=0

ran (small): my1 oth0 iops 134 size 8 K lat7.45 ms bw =1.05 MBps dur59.97 s READ

Point 2 (small=1, large=0) of 29

Valid small 1 Valid large 1

Valid

ran (small): VLun = 0 Size = 9337875456

ran (small): Index = 0Count = 4610Avg Lat =13.00

ran (small): Index = 1Count = 4599Avg Lat =13.02

ran (small): nio=9209 nior=9209 niow=0 req w%=0 act w%=0

ran (small): my2 oth0 iops 153 size 8 K lat13.01 ms bw =1.20 MBps dur59.94 s READ

Point 3 (small=2, large=0) of 29

Valid small 1 Valid large 1

Valid

ran (small): VLun = 0 Size = 9337875456

ran (small): Index = 0Count = 3205Avg Lat =18.70

ran (small): Index = 1Count = 3197Avg Lat =18.75

ran (small): Index = 2Count = 3199Avg Lat =18.73

ran (small): nio=9601 nior=9601 niow=0 req w%=0 act w%=0

ran (small): my3 oth0 iops 160 size 8 K lat18.72 ms bw =1.25 MBps dur59.94 s READ

-

-

-

-

Point 27 (small=0, large=6) of 29

Valid small 1 Valid large 1

Valid

ran (large): VLun = 0 Size = 9337875456

ran (large): Index = 0Count = 279Avg Lat = 213.26

ran (large): Index = 1Count = 281Avg Lat = 212.17

ran (large): Index = 2Count = 282Avg Lat = 211.49

ran (large): Index = 3Count = 281Avg Lat = 212.03

ran (large): Index = 4Count = 279Avg Lat = 213.37

ran (large): Index = 5Count = 282Avg Lat = 211.42

ran (large): Index = 6Count = 281Avg Lat = 212.17

ran (large): nio=1965 nior=1965 niow=0 req w%=0 act w%=0

ran (large): my7 oth0 iops32 size 1024 K lat 212.27 ms bw =32.96 MBps dur59.61 s READ

Point 28 (small=0, large=7) of 29

Valid small 1 Valid large 1

Valid

ran (large): VLun = 0 Size = 9337875456

ran (large): Index = 0Count = 247Avg Lat = 240.04

ran (large): Index = 1Count = 247Avg Lat = 240.69

ran (large): Index = 2Count = 245Avg Lat = 240.33

ran (large): Index = 3Count = 251Avg Lat = 235.70

ran (large): Index = 4Count = 254Avg Lat = 232.80

ran (large): Index = 5Count = 250Avg Lat = 235.24

ran (large): Index = 6Count = 247Avg Lat = 240.24

ran (large): Index = 7Count = 243Avg Lat = 243.83

ran (large): nio=1984 nior=1984 niow=0 req w%=0 act w%=0

ran (large): my8 oth0 iops33 size 1024 K lat 238.56 ms bw =33.46 MBps dur59.30 s READ

Point 29 (small=0, large=8) of 29

Valid small 1 Valid large 1

Valid

TEST END

应用外部磁盘:我建议应用FireWire 400/800,500GB.

总结

Orion是一个巨大年夜的测试硬件I/O状态的对象,一个设置设置设备摆设摆设欠妥的磁盘I/O机能会很低,这样的磁盘也不应该呈现在你的Oracle RAC中。

您可能还会对下面的文章感兴趣: