Azure Standard Storage のベンチマーク
せっかくなので、Azure の Standard Storage でもベンチマークをやってみました。A4サイズのOpenLogic (CentOS)インスタンスで、ベンチマークツールにOracle ORIONを使って測定しました。
Oracle ORIONの使い方は、こちらのページを参考にしました。
先に結論だけ書いておきますと、
- ホストキャッシュ無し: 42 IOPS
- 読み取り専用: 27IOPS
- 読み書き: 26 IOPS
という残念な感じで、まあこれは用途に合わせて正しいストレージを選択しましょうというところですね。最後に載せてありますが、シーケンシャルライトであればそれなりに速度も出ますし、ストライピングでもある程度性能を稼ぐこともできますので、Standard Storage でまかなえる範囲もそれなりにあるとは思います。
お値段もそれなりに違いますしね。
さて、以下ざっくり手順です。
Oracle ORIONのダウンロード
ここからダウンロードできます。
インストール(圧縮ファイルの展開)
計測用ディレクトリの作成
sudo mkdir /datadrive/iotest
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-010.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-020.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-030.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-040.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-050.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-060.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-070.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-080.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-090.dbf bs=1M count=1024
sudo dd if=/dev/zero of=/datadrive/iotest/testfile-100.dbf bs=1M count=1024
lunファイルの作成
ORIONを配置したディレクトリで実施
vi orion-test.lun
/datadrive/iotest/testfile-010.dbf
/datadrive/iotest/testfile-020.dbf
/datadrive/iotest/testfile-030.dbf
/datadrive/iotest/testfile-040.dbf
/datadrive/iotest/testfile-050.dbf
/datadrive/iotest/testfile-060.dbf
/datadrive/iotest/testfile-070.dbf
/datadrive/iotest/testfile-080.dbf
/datadrive/iotest/testfile-090.dbf
/datadrive/iotest/testfile-100.dbf
ベンチマークの実行(simpleモード: readのみ)
sudo ./orion_linux_x86-64 -run simple -testname orion-test -num_disks 1
ベンチマークの実行(advancedモード: Read/write): ディスク書き込み(write)処理の割合を20%
sudo ./orion_linux_x86-64 -run advanced -testname orion-test -write 20 -num_disks 1
シーケンシャルライトだとこんな感じ
前半はキャッシュが効いているのかずいぶん早いですね。
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-900.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.36517 s, 787 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-900.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 37.1877 s, 28.9 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-910.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.38524 s, 775 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-920.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 1.50498 s, 713 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-930.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 13.7333 s, 78.2 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-940.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 19.96 s, 53.8 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-950.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 12.5272 s, 85.7 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-960.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 17.6713 s, 60.8 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-970.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 15.7187 s, 68.3 MB/s
$ sudo dd if=/dev/zero of=/datadrive/iotest/testfile-980.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.33322 s, 201 MB/s
$ sudo dd if=/dev/zero of=/datadrive/itest/testfile-990.dbf bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 14.8563 s, 72.3 MB/s