こんにちはgrasys blog初登場になります、エンジニアの泉水です。
東京寒いですね、、、(沖縄出身なんです)
今回はGCPのcompute engineとAWSのEC2のベンチマークを取得し比較してみました。
ことの発端は…
GigaZineさんの記事どちらが全体的に優秀なのか、AmazonとGoogleのクラウドのパフォーマンスを比較した結果でAWSのベンチマーク結果がかなりいい!
けど、細かい条件が明示されてない。これはうちでもやるぞ!!といったところです。
早速ベンチマークの結果を見ていきましょう!
サーバ環境
検証環境は以下の表の通りです。
インスタンスタイプは記事と同じものを使用し、クライアントとサーバを同じ構成で2台用意しました。
サービス |
インスタンスタイプ |
OS |
ルートデバイス |
外部ディスク |
zone |
GCE |
n1-standard-16 (vCPU x 16、メモリ 60 GB) |
CentOS7(3.10.0-862.3.2.el7.x86_64) |
50G |
500G(Persistent SSD) |
us-east1-b |
EC2 |
c5d.4xlarge (vCPU x 16、メモリ 32G) |
CentOS7(3.10.0-862.3.2.el7.x86_64) |
50G |
500G(SSD gp2) |
us-east-1a |
検証
検証項目
今回の検証では、CPU性能、CPU負荷、(みんな大好き)MySQLのReadWrite性能、ストレージ性能、ネットワークスループットを対象としました。
また、テストは各5回実施し平均値を結果としました。
検証ツール
検証項目 |
ツール |
CPU性能 |
sysbench 1.0.16 |
CPU負荷 |
strress_ng 0.07.29 |
ディスク性能 |
fio 3.1 |
MySQL |
sysbench 1.0.16 |
ネットワークスループット |
iperf 2.0.12 |
検証結果
さぁ、結果を見ていきましょう!!!
CPU性能
項目\サービス |
ec2 |
GCE |
events per second |
15553.218 |
12007.728 |
CPU負荷
ディスク性能
項目\サービス |
ec2 |
GCE |
IOPS |
268 |
244 |
BandWidth |
269 |
245 |
項目\サービス |
ec2 |
GCE |
IOPS |
243 |
244 |
BandWidth |
244 |
245 |
項目\サービス |
ec2 |
GCE |
IOPS |
605 |
466 |
BandWidth |
303 |
233 |
項目\サービス |
ec2 |
GCE |
IOPS |
346 |
459 |
BandWidth |
173 |
230 |
項目\サービス |
ec2 |
GCE |
IOPS |
3050 |
1579 |
BandWidth |
11.9 |
6319 |
項目\サービス |
ec2 |
GCE |
IOPS |
2005 |
2142 |
BandWidth |
8023 |
8571 |
- Random Read 4K(ダイレクトIOモード iodepth=32)
項目\サービス |
ec2 |
GCE |
IOPS |
3050 |
16.7k |
BandWidth |
11.9 |
65.1 |
- Random Write 4K(ダイレクトIOモード iodepth=32)
項目\サービス |
ec2 |
GCE |
IOPS |
3011 |
15.3k |
BandWidth |
11.8 |
59.6 |
MySQL ReadWrite性能
項目\サービス |
ec2 |
GCE |
read |
1083726 |
762431.6 |
write |
299575.4 |
212535.6 |
other |
151354.6 |
107121.6 |
transaction |
73945.6 |
52662.2 |
transaction per sec. |
1232.042 |
877.312 |
queries |
1534656 |
1082088.8 |
queries per sec. |
25569.554 |
18026.77 |
項目\サービス |
ec2 |
GCE |
read |
5890483.2 |
2668607.2 |
write |
0 |
0 |
other |
841497.6 |
381229.6 |
transaction |
420748.8 |
190614.8 |
transaction per sec. |
7012.03 |
3176.456 |
queries |
6731980.8 |
3049836.8 |
queries per sec. |
112192.5 |
50823.304 |
項目\サービス |
ec2 |
GCE |
read |
1285337.2 |
1236398.8 |
write |
266429.8 |
257539.6 |
other |
154242.8 |
148673.8 |
transaction |
62433 |
60359.6 |
transaction per sec. |
1038.052 |
1003.228 |
queries |
1706009.8 |
1642612.2 |
queries per sec. |
28365.234 |
27301.612 |
項目\サービス |
ec2 |
GCE |
read |
9193209.2 |
6274360.4 |
write |
0 |
0 |
other |
1313315.6 |
896337.2 |
transaction |
656657.8 |
448168.6 |
transaction per sec. |
10941.678 |
7465.362 |
queries |
10506524.8 |
7170697.6 |
queries per sec. |
175066.856 |
119445.8 |
ネットワークスループット
項目\サービス |
ec2 |
GCE |
TCP Gbits/sec |
9.6 |
8.806 |
UDP Gbits/sec |
5.818 |
2.444 |
結論?
いかがでしょうか?
ぱっと見たかんじ、ec2の性能が良さそうに見えますね〜
しかしですよ!
項目\サービス |
ec2 |
GCE |
インスタンス費用 |
$497.76 |
$388.36 |
ディスク費用 |
$50 |
$93.50 |
合計費用 |
$547.76 |
$481.86 |
各プラットフォームのcost calculatorで計算した結果、このようにec2の方が高いのです。
実はこれはお値段通りの結果なのでは、、、
いや、GCEのディスク費用の方が高いのでデータ量が多い場合はec2の方がお得か???
ん〜、高速化できるオプションがec2にはプロビジョニングiopsができるEBSが、GCEにはローカルSSDがあります。
まだまだ結論づけるには早そうですね。
という事でgrasysのベンチマーク検証はまだまだ続きますので乞うご期待!!!