Google Cloud Platform とは
- Cloud
- トレーニング
目次
Google Cloud Platform とは?
こんにちは。株式会社トップゲート GAEマイスターの @sinmetal です。
今回は最近日本でもだいぶ利用者が増えてきた Google Cloud Platform (GCP) について、お話します。
GCPとは、GoogleがGmailやYouTubeなど、自社のサービスのために構築したインフラを、開発者に提供しているサービスです。
Googleが作成したハードウェアとソフトウェアで構築されたパワフルなデータセンターと、世界中に張り巡らしたGoogleのファイバーネットワークを利用してシステムを構築することができるので、自前でインフラを構築するよりもイニシャルコストとランニングコストを抑えることができます。
他のクラウドとの違い
これからクラウドを使おうと考えている人で、GCP、Amazon Web Service (AWS)、Microsoft Azure (Azure)のどれを使うか悩んでいる人も多いのではないかと思います。
僕が考えるパブリッククラウドを選ぶ基準ですが、値段やサービスの有無で選ぶよりも、思想の違いで選んだ方が良いのではないかと思っています。
値段やサービスは随時変わっていくため、今現在、自分が構築するシステムではこのクラウドが一番安い!となっても、明日他のクラウドが値下げする可能性が常に有りますし、新しいサービスもどんどん追加されていきます。
しかし、それぞれのクラウドの思想というのは、ころころ変わるものではないので、自分が思想とマッチするのかどうかというのは、システムを長く運用する上で重要です。
GCPの思想
GCPはハードウェアからソフトウェアまでGoogle自作のものが多いです。Borg、Bigtable、Dremel、Andromedaなど多くのソフトウェアを開発しています。
Googleのソフトウェアの多くは、Google Wayな思想で作られています。
それは分散です。Googleが作る仕組みは、コンピュートにしろストレージにしろ、全て分散するようにできています。
これによりGoogleのサービスは低コストで高いアベイラビリティとスケーラビリティを確保しています。
GCPを利用する場合は、分散について理解し、自分のアプリケーションもGoogle Wayな思想で作ると、Googleレベルのアベイラビリティとスケーラビリティを低コストで得ることができます。
そして、これからもGoogleは新しいソフトウェアを開発し、それをGCPで提供してくれることでしょう。
AWSの思想
AWSはオープンソースのソフトウェアのフルマネージドな状態で提供してくれるサービスが多いです。
今までオンプレで使っていたソフトウェアをそのまま移行できますし、オープンソースのソフトウェアはAWS以外でも動作するため利用者も多いです。
利用者が多ければ、開発も活発になりますし、知見も集まりやすいので、パターン化も行われやすく、開発が楽になります。
これからも良いオープンソースのソフトウェアが生まれれば、AWSはそれをフルマネージドなサービスとして提供してくれるでしょう。
Azureの思想
AzureはMicrosoftの製品をフルマネージドなサービスと提供してくれます。
Linuxの提供を開始していますが、やはりAzureを選ぶ大きな理由としては、Microsoft製品をMicrosoftがクラウドとして提供しているという安心感でしょう。
Windows、SQL Serverを始めとしたたくさんの製品をMicrosoftは持っていますし、これからも新しい製品を作ってくれるはずです。
Microsoftは開発環境も含めたソリューションを提供してくれるので、開発から運用まで全てMicrosoft製品で統一することができます。
Products
GCPには役割ごとにたくさんのProductが存在します。
これらを組み合わせて、自分が作りたいシステムを構築していくわけですが、どのようなProductがあるのかを知っておかないと、最適なProductを選択することができません。
本記事では最初のステップとして、それぞれのProductの概要を簡単に説明します。
Compute
App Engine
App Engineは、GCPの中でも最も歴史が古いProductで、Web Applicationを作成することに特化したPlatform as a Service (PaaS)です。
インフラの構築をまったくすることなく、スケーラビリティとアベイラビリティが高いWeb Applicationを構築することができます。
Compute Engine
Compute Engineは、仮想マシンを提供してくれるInfrastructure as a service (IaaS)です。
OSを選択しミドルウェアをインストールすることができるので、自分の好きなシステムを構築することができます。
Container Engine
Container Engineは、DockerコンテナのオーケストレーションツールであるKubernetesをGCPに最適化して提供してくれるProductです。
Dockerコンテナベースでシステムを構築したい時に便利なProductです。
Storage
Cloud Storage
Cloud Storageは、GCP上に存在するファイルストレージです。
ユーザがUploadしたファイルの保存、Compute Engineで処理したファイルの保存など、ファイルを保存する必要がある場合は、Cloud Storageに保存することが多いです。
GCPの中ではデータのバックアップや、Product間のデータの受け渡しの場としても利用されます。
Cloud Datastore
Cloud Datastoreは、Key Value Store(KVS)のデータベースです。
App Engineのデフォルトのデータベースとしても採用されており、非常にスケーラビリティが高いのが特徴です。
Cloud SQL
Cloud SQLは、MySQLと同じインタフェースを持つリレーショナルデータベース(RDB)です。
フルマネージドな環境でRDBを使いたい時に便利なProductです。
Cloud Bigtable
Cloud Bigtableは、Key Value Store(KVS)のデータベースです。
HBaseと同じインタフェースを持っているため、オンプレのHBaseの移行をしやすいです。
Big Data
BigQuery
BigQueryはビッグデータ分析用のProductです。
数十億レコードのデータを数秒でフルスキャンする性能を持っています。
ストレージコストも安いので、Applicationのログを蓄積、購買データの分析など幅広い用途で利用できます。
Cloud Dataflow
Cloud Dataflowはビッグデータをバッチおよびストリーミングで処理することができるProductです。
コードを書いて処理内容を設定することができるので、分析だけでなく、Export Transfer Load(ETL)にも利用できます。
Cloud Dataproc
Cloud DataprocはHadoop、MapReduce、Spark、Pig、Hiveをフルマネージドで提供するProductです。
すでにこれらのApplicationを利用している場合、GCPに移行する時に選択することができます。
Cloud Pub/Sub
Cloud Pub/Subは多対多の非同期メッセージングを行うためのProductです。
GCP内の各Product間のメッセージングに利用や、GCP外のWeb Appllicationとのメッセージングに利用することができます。
Services
Cloud Endpoints
Cloud Endpointsは、App EngineでREST APIを構築する時に利用できるLibraryです。
GoogleのAPIと同じインタフェースにすることができ、Android, iOS, JavaScriptのClient Libraryを自動生成できます。
AndroidやiOSのエンジニアが、簡単なREST APIのWebサーバを作りたい時に便利な仕組みです。
Translate API
Translate APIは、Google翻訳の裏で動いているAPIです。
自然言語の翻訳を行うことができます。
Prediction API
Prediction APIは、機械学習のAPIです。
過去のデータを登録しておくことで、未知のデータの分類を行うことができます。
Resources
- Google Cloudplatform Japan Blog
- YAPC Asia 2015「Google Cloud Platformの謎テクノロジーを掘り下げる」のまとめ
- [5分で試せる、10億件×8.5億件をBigQueryで1分でJOINする方法
弊社トップゲートでは、Google Cloud (GCP) 利用料3%OFFや支払代行手数料無料、請求書払い可能などGoogle Cloud (GCP)をお得に便利に利用できます。さらに専門的な知見を活かし、
- Google Cloud (GCP)支払い代行
- システム構築からアプリケーション開発
- Google Cloud (GCP)運用サポート
- Google Cloud (GCP)に関する技術サポート、コンサルティング
など幅広くあなたのビジネスを加速させるためにサポートをワンストップで対応することが可能です。
Google Workspace(旧G Suite)に関しても、実績に裏付けられた技術力やさまざまな導入支援実績があります。あなたの状況に最適な利用方法の提案から運用のサポートまでのあなたに寄り添ったサポートを実現します!
Google Cloud (GCP)、またはGoogle Workspace(旧G Suite)の導入をご検討をされている方はお気軽にお問い合わせください。
お問合せはこちら
メール登録者数3万件!TOPGATE MAGAZINE大好評配信中!
Google Cloud(GCP)、Google Workspace(旧G Suite) 、TOPGATEの最新情報が満載!