PR

Google Compute Engineで仮想マシンを作る

2015年1月30日(金)
出張 純也(でばり じゅんや)

GCEとAmazon EC2を比較する

一通りGCEを起動までできるようになったところで、同種のサービスであるAmazon EC2との比較をしてみたいと思います。本記事では特に、料金体系、パフォーマンス、日本から見た時のネットワーク性能の3点を比較してみたいと思います。

まず料金についてですが、両者は課金の単位が異なっています。GCEは分単位での課金で、最小課金の時間は10分間です。これは、起動後まず10分ぶんの課金が発生し、10分以降は1分単位で課金されるようになるということです。例えば、8分間だけ起動する場合は10分間の料金が課金され、12分起動すると12分間の料金が課金されることになります。
これに対してAmazon EC2は、1時間単位で課金がされる仕組みです。起動時間が8分でも12分でも59分でも、同じ1時間分の料金を支払うことになります。

実際にほぼ同じ性能のインスタンス同士で、時間当たりの料金を比較します。GCEの「n1-standard-1」インスタンスと、EC2の「m3.medium」インスタンスがほぼ同性能なので、これらの1時間あたりの料金を比較します。いずれも2014年12月現在、かつアジア地域(AWSは東京リージョン、GCPはasia-east1)の料金です。

表2:GCEとAmazon EC2の料金比較

インスタンスタイプコア数メモリ料金
GCEn1-standard-11-core3.75 GB$0.069 / 1時間
EC2m3.medium1-core3.75 GB$0.101 / 1時間

利用料金はインスタンスのぶんだけでなく、ネットワークやディスクの利用料金など他にも考慮すべき点があり、単純に比較するべきではありませんが、単位時間あたりの利用料金ではGCEの方が低め、ということになりそうです。

次はパフォーマンスの調査を行います。同じ条件で比較を行うため、先ほどと同様にGCEはn1-standard-1インスタンスを、EC2ではm3.mediumインスタンスを利用します。OSによる差がないように、どちらもCentOS 7を利用し、単純な計算の速度を比較します。計算はpythonのtimeitモジュールによって行います。

python -m timeit -n 100000 '"-".join([str(n) for n in range(100)])'

実行結果は次の通りです。

表3:GCEとAmazon EC2の計算速度を比較

GCEEC2
計測結果19.1 マイクロ秒 / 回41.5 マイクロ秒 / 回

以上の結果から、文字列の結合という単純な処理においてはGCEが倍程度のスピードであることがわかりました。CPUはいずれも1コアとのことですが、CPUの性能などが異なっている可能性があり、こちらも単純に比較するのは難しそうです。

最後に、日本から接続するときのネットワーク速度を比較します。パフォーマンス調査に利用したものと同じインスタンスにそれぞれ nginx をインストールし、同じHTMLを返すように設定し、東京都内にあるゴーガ社と、東京都内にインスタンスのある第3のクラウドサービスから、それぞれ1000回ずつGETして、平均速度を比較しました。

表4:GCEとAmazon EC2のネットワーク速度を比較

接続元\接続先GCEEC2
ゴーガ94.881 ミリ秒 / 回45.396 ミリ秒 / 回
他社クラウド80.728 ミリ秒 / 回9.374 ミリ秒 / 回

接続元がゴーガから接続した場合と、他社クラウドから接続した場合、いずれの場合においてもGCEよりEC2の方が高速に接続できているようです。ECのほうは、東京にリージョンを持っていることが影響しているかもしれません。

上記の結果からただちにGCEとEC2のどちらが優れていると結論づけられるわけではありませんが、クラウドサービスを構築する際に参考にしていただけますと幸いです。

オンプレからGCPへ

本記事ではGoogle Cloud Platform全体の紹介と、Google Compute Engineの紹介、および利用方法を紹介しました。

今後はこれまでオンプレ環境で構築されてきたシステムが、続々とクラウドにリプレースされていくと思われます。オンプレ環境をGCPにリプレースする場合は、単純に全てをGoogle Compute Engineで置き換えるのは非効率で、機能ごとに適切なサービスを選択していく必要があります。例えば、以下のような利用方法が考えられます。

  • Webインターフェース部分にはCompute Engineを利用
  • ファイルやログの格納にはGoogle Cloud Storageを利用
  • ログの集計にはGoogle Big Queryを利用
  • データベースサーバはGoogle Cloud SQLやGoogle Cloud Datastoreを利用

本連載では、引き続きこれらのサービスの解説や利用方法の紹介などを行っていく予定です。

著者
出張 純也(でばり じゅんや)
株式会社ゴーガ エンジニア
大阪大学大学院情報科学研究科博士後期課程修了。博士(情報科学)。大学院ではソフトウェア開発におけるプロジェクト進行データをマイニングしてプロジェクト管理に役立てる研究に従事する。研究で得た多くのことを活かすべくゴーガに入社。日本酒が好きで、日本酒好き仲間を増やすべく勉強中。実は表千家茶通箱の免状を持っている。情報処理学会会員。O型のさそり座。

連載バックナンバー

Think IT会員サービス無料登録受付中

Think ITでは、より付加価値の高いコンテンツを会員サービスとして提供しています。会員登録を済ませてThink ITのWebサイトにログインすることでさまざまな限定特典を入手できるようになります。

Think IT会員サービスの概要とメリットをチェック

他にもこの記事が読まれています