読者です 読者をやめる 読者になる 読者になる

仕事中の問題と解決メモ。

最近はPythonとGoogle Cloud Platformがメイン。株式会社ビズオーシャンで企画と開発運用、データ活用とか。 http://mstdn.bizocean.co.jp/@uyamazak https://github.com/uyamazak/

AWSではなく、GCPを選んだ5つの理由

いわゆるクラウドサービスで、一番先に進み、ユーザー数も多いのはAmazon Web Service(AWS)だ。でも私は新規サービスにはGoogle Cloud Platform(GCP)を選んだ。

AWSがいいのか、GCPがいいのか、人と話していてよく聞かれるし、悩んでいる人も多いと思うので、いくつか要点をまとめてみた。

1.BigQueryの存在

BigQueryはいわゆるビッグデータの解析基盤。圧倒的コストパフォーマンスで、AWSをメインに使っていても、ログなどのビッグデータだけはBigQueryに入れている会社も多い。


CSVなどのバッチインポートや、JSONでストリーミングインサートしたテラバイト、ペタバイト級のデータも、SQL(現在はBigQuery独自のものと標準に則った2種類がある)で、集計ができる。

驚くのはその速さと、安さ。クエリにもよるけど数GBあっても数秒で終わる。bizoceanでは、毎日200MB超のログと、3ヶ月単位の日次レポート集計を行っているが、保存料金は今のところ数十円、クエリ料も無料枠から出ない。

またブラウザから十分に使えるクライアントも用意されているので、エンジニア以外でもすぐに触れる。


BigQueryは他のクラウド、オンプレからも問題なく使えるが、Googleのアカウントで統一できる認証のやりやすさ、ネットワークの問題を考えると、GCPを使った方が利点が多い。

2.直接的コストの安さ

クラウドベンダーから直接請求される金額を直接的とした。金額は、頻繁に変わるので明記はできないが、Googleの方が2,3割は安かった。上記BigQueryも非常に安い。

この安さはGoogle自体のサービスの規模(検索、Gmail,ドライブ)から来るものや、完全独自設計のサーバー、データセンター、機械学習による省電力化、コンテナによる仮想化など先に進んだ技術、提供サービスの少なさが影響しているのだと思う。

3.間接的コストの安さ

請求明細にはでないものを間接的とした。

下記でも述べるがGCPAWSとくらべて、提供サービスが少ない。例えばフルマネージドのリレーショナルデータベースは、MySQL(Cloud SQL)しか選べない。

しかし、その分、その限られたサービスで組んだシステムは管理はしやすい。ログもほぼ勝手にStackDriverに入るなど、内部でいろいろとつなげてくれる。


また、サーバーは1ヶ月等予約なしで、結果論的に長期使用割引が効くのは非常にありがたい。

このサーバーをいつまで使うとか、予測するにもコストがかかるし、新規サービスにおいてそういった予測はまず当たらない。


そして、うちの会社ではメールにG SUITE(旧Google Apps)を使っているので、人が入ったとき、辞めたときなどアカウント管理が簡略化できる。


4.GCP用に新規で開発、設計できること

上記でも述べたように人気のサービスをどんどん取り入れたり、新規でどんどん作っていくAWSとくらべて、GCPの提供サービスは圧倒的に少ない。

これは、大型の既存のサービスをクラウド化したいのであれば大きな障害になる。たとえばbizoceanはPostgreSQLを使ってるし、memcachedも使っているので、AWSであればすべてフルマネージドのもので用意できるが、GCPにはないので、自分でGCEなり、GKEで構築、運用するしかない。

しかし、そういったシガラミがない新規サービスであれば、GCPに用意されているものだけで構築できるので大きな問題はない。

5.Googleの先端技術が使える

ビッグデータでは定番となった分散処理のフレームワークMapReduceや、Dockerでも使われているCgroups、Dockerを始めとしたコンテナ管理基盤でおそらく一番使われているKubernetesもGoogleが開発し、オープンソース化したものだ。

最近では機械学習のためのライブラリTensor Flowもオープンソース化された。クラウド版はCloud Machine Learning としてベータ公開されており、すぐ使うことができる。

その他、コンピュータ、インターネットの技術においてGoogleが作ったものは数多い。

Googleの技術力に屈服されたならGCPを使うしか無い。



あとあんまり関係ないけど、私がPythonをよく使うのは、Pythonが好みにあうだけでなく、Googleの社内言語として各サービスのドキュメントが充実しているということもある。


GCPを使っていろいろサービス開発したいという方は下記を見てね。

株式会社 ビズオーシャンの採用/求人 | 転職サイトGreen(グリーン)