[PR] あなたが Kindle で読みたいその本、Kindle に対応したら Twitter でお知らせします。

DigitalOcean と Amazon EC2 のディスク I/O を比較してみた

Posted on

Rebuild ポッドキャストの 28 回目のエピソードで DigitalOcean が話題に上がっていましたが、その中で Amazon EC2 の t1.micro と比べて 10 ~ 20 倍の性能差があると盛り上がっていました。「DigitalOcean って安い VPS でしょ?」くらいにしか思ってなかったので、この機会に自分で検証してみました。

CPU やメモリに大きな差はないので、今回はディスク I/O に絞って比較しました。

  • コールドスタート状態で計測
  • hdparm コマンドを 3 回実行して平均値を採用
  • マシンスペックは以下のとおり
EC2DigitalOcean
OSRHEL 6.4CentOS 6.5
CPU1 vCPU1 vCPU
Memory613 MB512 MB
DiskEBSSSD

Amazon EC2

EC2 のディスクはこんな感じ。 Provisioned IOPS じゃない普通の EBS です。

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/xvde1            6.0G  2.0G  3.9G  34% /
none                  296M     0  296M   0% /dev/shm

さっそく計測。

# for n in `seq 1 3`; do hdparm -t /dev/xvde1; sleep 10; done
/dev/xvde1:
 Timing buffered disk reads: 114 MB in  3.04 seconds =  37.44 MB/sec
/dev/xvde1:
 Timing buffered disk reads: 124 MB in  3.25 seconds =  38.17 MB/sec
/dev/xvde1:
 Timing buffered disk reads: 112 MB in  3.04 seconds =  36.87 MB/sec

予想どおり遅いですね。平均すると 37.49 MB/sec です。

DigitalOcean

DigitalOcean のディスクはこんな感じ。 EC2 とほぼ同じパーティション・レイアウトです。

# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda         20G  934M   18G   5% /
tmpfs           246M     0  246M   0% /dev/shm

期待を込めて計測してみると。

# for n in `seq 1 3`; do hdparm -t /dev/vda; sleep 10; done
/dev/vda:
 Timing buffered disk reads: 2684 MB in  3.00 seconds = 894.34 MB/sec
/dev/vda:
 Timing buffered disk reads: 2948 MB in  3.00 seconds = 982.21 MB/sec
/dev/vda:
 Timing buffered disk reads: 2888 MB in  3.00 seconds = 962.33 MB/sec

EC2 と桁が違う!平均すると 946.29 MB/sec、EC2 の 25 倍以上の速さです。

さくらの VPS

スペックが違うので公平な比較ではありませんが、手元にあるさくらの VPS (HDD) でも試してみました。

# for n in `seq 1 3`; do hdparm -t /dev/vda3; sleep 10; done
/dev/vda3:
 Timing buffered disk reads: 612 MB in  3.00 seconds = 203.74 MB/sec
/dev/vda3:
 Timing buffered disk reads: 744 MB in  3.00 seconds = 247.81 MB/sec
/dev/vda3:
 Timing buffered disk reads: 758 MB in  3.01 seconds = 251.49 MB/sec

まあまあ、といったところですね。平均すると 234.34 MB/sec です。

まとめ

こうやって比較してみると、DigitalOcean がずば抜けてハイパフォーマンスなことがよくわかります。ディスク I/O がサーバ選びのすべてではありませんが、検討に値するサービスだと思います。

カードを登録しなくても PayPal 決済で気軽に試せるので、まだ使ったことがない人はぜひ。