BFT名古屋 TECH BLOG

日々の業務で得た知識を所属するエンジニアたちがアウトプットしていきます。

【GCP】GCPクイックスタートガイド② -GCPって他のクラウドサービスと何が違うの? AWSやAzureとの比較-

こんにちは!
BFT名古屋支店の佐野です。

今回は佐野が勝手に進めるブログプロジェクト「GCPクイックスタートガイド」の第2回です。
第一回の「そもそもGCPって? クラウドサービスって?」ではGCPだけでなく、GCPのようなクラウドサービスに共通する機能や特徴をおおまかにお話しましたので、第二回は「GCPって他のクラウドサービスと何が違うの? AWSやAzureとの比較」と銘打ち、Amazonが提供するクラウドサービス「Amazon Web Services」と、Microsoftが提供するクラウドサービス「Microsoft Azure」のふたつと比べ、GCPは何が違うのか、何に優れているのかをお話していきます。


実際そんなに変わらない? 三大クラウドサービスの単純比較

最初はどれにするか考えるもの

昨今で一般に使われているクラウドサービスといえば、Amazonの「Amazon Web ServicesAWS)」、Microsoftの「Microsoft Azure(Azure)」、そしてこのクイックスタートガイドで扱っているGoogleの「Google Cloud Platform(GCP)」の3つが挙げられます。
この3つをまとめて三大クラウドサービスと呼ぶのが一般的ですが、この3つのすべてをひとつのシステムで使うことは極めて稀です。
基本的には各々の長所や短所、向き不向き、そしてシステムそのものや運用する会社との相性や細々とした都合を考慮して検討し、このうちのひとつを選んで利用します。

ただ三大クラウドサービスそれぞれの違いを挙げよといわれても、即座に出せないことが大半でしょう。
それもそのはずで、結論から言えば三大クラウドサービスの機能面はどれも殆ど変わらないからです。
GCPでできるようなことはAWSやAzureでもだいたいできますし、その逆も然り。三大クラウドサービスのいずれかだけでしかできないことはとても限られているので、機能比較を細かく行っても選定の決め手となる情報を得るのは極めて難しいと言えます。
なのでほとんどの場合は「できる・できない」よりも「向き・不向き」で選ぶのです。

ということで、まずはそれぞれのクラウドサービスが強いとされているところと、少し難があるところを見てみましょう。


何となく使える柔軟型・AWSの特徴

三大クラウドサービスの中で最もシェア率が高いAWSは「分かりやすさ」や「使いやすさ」に長けている印象を受けます。
基本的にGUIベースでシステムの組み上げと運用を行なえる簡便性は、他のクラウドサービスにはない特徴であり、クラウドサービス運用未経験であっても豊富なドキュメントを見ながらであれば何となく使えてしまいます。
機能面においては特筆して何かに優れているわけではないものの、機能そのものの性能やクラウドサービス自体のセキュリティや耐久性および可用性は高水準であり、サービスの数が豊富であることも大きな長所です。

しかし単純にサービスが多く、ひとつの目的に対して取れる選択肢が多岐にわたる分、最も効率的で適する選択肢を選ぶためには知識が必要となるでしょう。
また、シンプルに使う分には何となくで扱える半面、実務的な“作りこんだ”システムの構築・運用をしようという時には、できることとできないことの把握のために膨大なドキュメントの端々まで確認し、サービス同士の連携を密に考える必要が出てきます。
そのため、AWSは知識習得のための学習曲線が急峻であると言われています。

Officeやオンプレミスと併用するなら・Azureの特徴

OSの使用率では最もシェアを占めているWindowsを擁するMicrosoftクラウドであるAzrueは、WindowsそのものやOfficeなどのMicrosoft製品との併用を特に重視しています。
システム上でMicrosoft製品を主として利用するのであれば、Azureの環境はAWSGCPよりも特筆するくらい適したものになります。
またAzureはオンプレミス(自社内やデータセンターにユーザー自身が運用管理するシステムのサーバーを置く運用方式)とクラウドを連携させるハイブリットクラウドを率先してサポートしており、レガシー化しつつあるシステムとの連携や移行性はAWSGCPよりも強いと言えます。

その反面、オープンソースツールやフレームワークなどのオープンソース技術へのサポートが乏しく、それらを利用したシステム構築ではAWSGCPに比べると難しいとされています。
加えてAWSGCPに比べてサービスの機能の質が甘いという見方もあり、またシェア率の高いAWSと比べると当然ですが、コミュニティやネット検索で得られる情報が少なく、Azrue活用の知識を得るには公式のドキュメントや書籍を読み込むことが主体となります。   総じてAWSよりクラウドに関する専門知識を要する場面が多く、最初から知識と技術を求められる点が難と言えます。

データ分析や機械学習が速い・GCPの特徴

最も使用率の高い検索エンジンとして知られるGoogle発のサービスらしく、GCPビッグデータの処理や分析、機械学習関連において高い評価を得ています。
膨大なデータからログや傾向を解析、あるいは機械学習を行なうノウハウはAmazonMicrosoftと比べても突出しており、そのノウハウが活かされたGCPはそういった解析や機械学習を行なうシステム開発にはうってつけというわけです。
Googleビッグデータ高速処理技術は、GCPにも組み込まれており、GCPシステム開発を行なえばその恩恵を受けることができるでしょう。
またGoogleが提供しているGoogleカレンダーGmailなどのサービスとのシームレスな連携ができることも特徴であり、これらを利用したシステムを開発する場合もGCPが候補として一歩先を行くはずです。

大きな短所としてはAzureとも共通しますが、情報を得たい場合にコミュニティやネット検索をあまり当てにできないという点があります。
また公式のドキュメントには和訳されていないものが多く、たとえ和訳されていたとしても日本語として不自然な部分が目立つなど、開発や運用のための情報を得る際に苦労を感じることが多いのが何よりの難点です。

このクイックスタートガイドもその点を少しでも解消しようと書いているものですが、ほぼすべてを網羅するというのは不可能なため、根深い課題と言えます。


区切り

ここまででクラウドサービスとしてGCPを利用するに適するケースはビッグデータの処理や分析をしたり、機械学習を行なう、あるいはGoogleが提供するサービスとの連携が見込まれる場合と結論づけられますが、実際にはそのようなケースでなくともGCPが選択されることがあります。
例えばMicrosoft製品を使用したくなかったり、Amazonのサービスから距離を置いていたり、コストを見積もったときにGCPが一番効率がよかったり、などといったあらゆる要素が選定理由となります。
最初に述べた通り三大クラウドサービスは機能面においてはその差はあまりないため、どれを選んでもシステム構築自体はできるのです。
思わぬ形でGCPを利用する場合になった時にスムーズに環境を構築できるようにする、次回からはそのための環境構築に必要な要素と構築方法を扱っていきます。

【次回】

bftnagoya.hateblo.jp

【前回】

bftnagoya.hateblo.jp