SlideShare uma empresa Scribd logo
1 de 67
Report of Google I/O 2013
Ryo Yamasaki @vierjp
May, 31th 2013	
1	
Google Cloud Platform
•  Blog
•  http://blog.vier.jp/
•  Twitter
•  @vierjp
•  仕事
•  Javaでサーバーサイドの開発をメインにしています。
•  前職はスマホ向けサービス事業者の技術リーダー。
•  Google App Engineを中心にCloud StorageやBigQuery等、
Google Cloud Platformのプロダクトを利用していました。
•  現在フリーなので、特にGoogle Cloud Platform関連のお仕事が
あればご連絡いただけますと幸いです。
•  個人でAndroidアプリも公開してます	
•  WiFi Tunes Sync
Ryo Yamasaki	
自己紹介	
2
Google Cloud Platform	
•  Google App Engine
•  Google Cloud Storage
•  Google BigQuery
•  Google Cloud Datastore
•  Google Compute Engine
•  Google Cloud Platform共通
Agenda	
3
Google App Engine	
4	
Google Cloud Platform
Google App Engine	
•  Webアプリを構築するためのPaaS
•  強力な自動スケーリング機能
•  インフラ管理の手間も知識も不要
概要	
5
Google App Engine	
•  New Runtime PHP
•  Modularized Applications
•  Mobile Backend Starter
•  Android StudioのCloud Platformサポート
Google I/Oで発表された新機能	
6
Google App Engine	
•  Python、Java、Goに続きPHPが追加
•  現在 Limited Preview
•  PHP Version 5.4.8
(詳細は後述のphpinfo参照)
•  AppEngineのDatastoreは現状利用不可
•  Cloud SQLが利用可能
•  後述のCloud Datastoreも利用可能
New Runtime PHP	
7
Google App Engine	
•  Limited Previewアカウントで試しました
New Runtime PHP	
8	
•  phpinfo
•  PHP Version5.4.8
•  mbstringなし
http://phpinfo.vier-test.appspot.com/
Google App Engine	
•  Limited Previewアカウントで試しました
New Runtime PHP	
9	
•  WordPress 日本語版
http://vier-test.appspot.com/
•  日本語の問題はなし
•  画像アップロード不可
Google App Engine	
•  制限	
•  ローカルファイルシステムへのアクセス不可
•  Cloud StorageのPathに修正が必要
•  ファイルのダイレクトアップロード不可
•  そのままでは「$_FILES」が使えない
•  Cloud Storageを使う方法に修正が必要
•  mbstringが使えない
•  まだ使えないApp Engineのサービスがある
•  ProcessやSystemを操作する関数は使用不可
•  Session情報が突然消える可能性あり
New Runtime PHP	
10
Google App Engine	
•  Trusted Tester中の「Servers」という機能
•  一つのアプリの中に複数のコンポーネントを
配置可能
•  コンポーネント毎に下記の設定が可能
•  スケーリング	
•  デプロイ	
•  バージョニング	
•  パフォーマンス設定
•  Datastore、Memcache、TaskQueueはコン
ポーネント間で共有
Modularized Applications
11
Google App Engine	
•  概要
•  「サーバーサイドのコードを一切書かずに
サーバーと連携するAndroidアプリを作る」
ためのApp Engine用アプリ
Mobile Backend Starter
12
Google App Engine	
•  特徴
•  サーバー側のコーディングが一切不要
•  コードが公開されているので改修も可能
•  デプロイ環境を構築する必要すら無し
•  Web上から直接デプロイ可能
•  Googleアカウントでの認証をサポート
•  Google Cloud Messaging(GCM)のサポート
•  管理画面から全登録済みクライアントに対して
一斉にメッセージを送信可能
Mobile Backend Starter
13
•  Continuous Query
•  サーバー側でクエリの結果に影響するデータが更
新されると自動で関連する全クライアントに反映さ
れる仕組み
Google App Engine	
Mobile Backend Starter
14	
Mobile	
  Backend	
  Starter	
①更新	
 ②通知	
③再取得	
③再取得	
 ③再取得
Google App Engine	
Android Studio の Cloud Platform サポート	
15
Google App Engine	
•  Ushering in the Next Generation of Cloud Computing
•  https://developers.google.com/events/io/sessions/333265959
•  A New Language for App Engine
•  https://developers.google.com/events/io/sessions/333055646
•  Cloud Backend for Your Android Application
•  https://developers.google.com/events/io/sessions/333508149
•  Google App Engine for PHP 公式ドキュメント
•  https://developers.google.com/appengine/docs/php/
•  Mobile Backend Starter 公式ドキュメント
•  https://developers.google.com/cloud/samples/mbs/
•  Blog @vierjp : 27.Google I/Oで発表されたCloud Platformの新機能
•  http://blog.vier.jp/2013/05/google-iogoogle-cloud-platform.html
•  Blog @vierjp : 28.Google App Engine for PHP (GAE/PHP)
•  http://blog.vier.jp/2013/05/google-app-engine-for-php-gaephp.html
•  Blog @vierjp : 29.Google App Engine for PHPでWordPress
•  http://blog.vier.jp/2013/05/29google-app-engine-for-phpwordpress.html
•  Blog @vierjp : 30.Google App Engine for PHPにおけるポータビリティ
•  http://blog.vier.jp/2013/05/30google-app-engine-for-php.html
16	
参考リンク
Google Cloud Storage	
17	
Google Cloud Platform
Google Cloud Storage	
•  クラウド上のファイルストレージサービス
•  一言で言えば Amazon S3 の Google版
•  自前で無料のキャッシュ機能を持つ
概要	
18
Google Cloud Storage	
•  gsutilからマルチスレッドでアップロード
•  gsutil cp –m *.txt gs://my_bucket
•  さらに先頭の文字でパーティショニング
•  gsutil -m cp 0* gs://my_bucket
•  gsutil -m cp 1* gs://my_bucket
•  gsutil -m cp 2* gs://my_bucket
•  ・・・	
•  gsutil -m cp 8* gs://my_bucket
•  gsutil -m cp 9* gs://my_bucket
•  gsutilから分割Upload
1.  split -n 10 big-file big-file-part-
2.  gsutil -m cp big-file-part-* gs://bucket/dir/
3.  gsutil compose gs://bucket/dir/big-file-part-* gs://bucket/dir/big-
file
Google Cloud Storageに大量データをアップロードする際のテクニック	
19
Google Cloud Storage	
•  S3からローカルにコピー	
•  gsutil cp s3://my_bucket/*.txt .
•  S3からCloud Storageにコピー	
•  gsutil cp s3://my_bucket/*.txt gs://my_bucket
•  Cloud StorageからS3にコピー	
•  gsutil cp gs://my_bucket/*.txt s3://my_bucket
•  S3からCloud Storageへ5ペタByteのデータをコピーした
事例
•  可能な限り速く
•  Live Migration(ダウンタイム無しに)
•  AppEngine・オンプレミス環境も関連する複雑な事例
Google Cloud Storageに大量データをアップロードする際のテクニック	
20
Google Cloud Storage	
•  JSON APIによるバッチリクエスト
•  一度のリクエストで複数の命令を投げる手
法
•  大量のオブジェクトに対してまとめてアクセ
ス権限を設定したり削除したりする場合等
に有効
Google Cloud Storageに大量データをアップロードする際のテクニック	
21
Google Cloud Storage	
•  Offline Disk Import (Limited Preview)
Google I/Oで発表された新機能	
22	
アップロードしたいファイルをハードディスクに
入れてGoogleに送るとGoogle内のネットワーク
からアップロードしてくれる
料金は通常のGoogle Cloud Storageの料金に
加えて、HDD毎に「$80」加算されます。
Google Cloud Storage	
1.  Offline Disk ImportのInterest Formから申し込み	
2.  SATAのハードディスクをEncFS(暗号化ファイルシ
ステム)でフォーマットする	
3.  データをハードディスクにコピーする	
4.  Googleに郵送する	
5.  Googleが顧客の所有する新しいbucketに
 Googleの高速なネットワークを使ってimportする
6.  GoogleがHDDを郵送で返却する
Offline Disk Import の手順
23	
*現時点ではアメリカに住所がある顧客のみ対象です
Google Cloud Storage	
•  Versioning
•  Durable Reduced Availability storage
•  30% price drop
•  Cloud Console
•  Composite Objects
•  Notifications
•  JSON API
•  Offline disk import
Google Cloud Storageの最近のリリース一覧	
24
Google Cloud Storage	
•  Importing Large Data Sets into Google Cloud Storage
•  https://developers.google.com/events/io/sessions/333473305
•  Google Cloud Storage公式ドキュメント
•  https://developers.google.com/storage/
•  Offline Disk Import - Google Cloud Storage
•  https://developers.google.com/storage/docs/early-access
•  Blog @vierjp : 31.Google Cloud Storageに大量データ
をアップロードする際のテクニック(Google I/O 2013)
•  http://blog.vier.jp/2013/05/google-cloud-storagegoogle-io-2013.html
25	
参考リンク
Google BigQuery	
26	
Google Cloud Platform
Google BigQuery	
•  大量のデータに対してSQLライクなクエリを
実行して高速かつリアルタイムに結果を取
得することが可能なGoogleのサービス
•  350億行のスキャンをインデックスなしに数十秒
で行うことができる
•  Webの画面、CUIのツール、REST APIから
実行可能
概要	
27
Google BigQuery	
•  AnalyticsとAdSenseとの連携
Google I/Oで発表された新機能	
28	
BigQueryからAnalyticsとAdSenseのデータを参
照することが可能に
Google BigQuery	
•  現時点でAdSenseのデータを参照可能
•  Adsenseのデータに対するクエリは無料
Google Adsenseのデータを参照する	
29
Google BigQuery	
•  2013年9月のリリースを目指している
•  エンジニア向けLimited Preview受付中
•  http://goo.gl/QJR9Y
Google Analyticsのデータを参照する	
30
Google BigQuery	
1.  標準の管理画面と別の角度から分析可能
2.  Adsense・Analyticsのデータと自社で持つ別
の情報をJoinして分析可能
この機能の意義	
31
Google BigQuery	
•  3月に追加された機能
•  Big JOIN
•  Large Group Aggregations
•  Trusted Tester中の機能
•  App Engine Datastore Backup to BigQuery Import
(一部機能は提供済み)
最近追加された機能・実装予定の機能	
32
Google BigQuery	
•  Google Analytics and AdSense Data Analysis in BigQuery
•  https://developers.google.com/events/io/sessions/332940014
•  AdSense BigQuery Integration Guide – AdSense
•  https://developers.google.com/adsense/bigquery
•  BigQuery 公式ドキュメント
•  https://developers.google.com/bigquery/
•  Blog @vierjp : 23.BigQueryの新機能 (2013/03/15)
•  http://blog.vier.jp/2013/03/bigquery-20130315.html
•  Blog @vierjp : 32.Google BigQueryでAnalyticsとAdSenseの
データを分析する(Google I/O 2013)
•  http://blog.vier.jp/2013/05/32google-bigqueryanalyticsadsensegoogle.html
33	
参考リンク
Google Cloud Datastore	
34	
Google Cloud Platform
Google Cloud Datastore	
•  App EngineのDatastoreを単独で利用可能
•  PythonとJavaはProtocol Buffer APIを利用可能
•  他の言語からはJSON APIを利用可能
概要	
35
Google Cloud Datastore	
•  App EngineのDatastoreと同じもの
•  クエリの速度がデータ量に影響しない
•  データは複数データセンターにレプリケートされる
•  計画されたダウンタイムはなし
•  メンテナンスフリー
•  etc…
•  環境や言語を問わず利用可能
•  Compute Engine、オンプレミス環境からも利用可能
特徴	
36
Google Cloud Datastore	
App EngineのバックエンドとしてCompute Engineを利用
•  App Engineでしづらい処理をCompute Engineで行う事が容易
•  長時間のバッチ処理をCompute Engineで行う
•  DatastoreのデータをBigQueryに転送する前に加工する
両方の環境からデータの共有が可能!
ユースケース 1	
37
Google Cloud Datastore	
Compute Engineから使うNoSQLデータベースとして
•  App Engineの対応言語に縛られずにDatastoreを利用可能
•  例えばCompute Engine上に node.jsのサーバーを構築したり
•  データベースサーバー運用コストを減少 (自前で構築するのと比べて)
ユースケース 2	
38
Google Cloud Datastore	
App Engine、Compute Engine以外の環境から利用する
•  別のクラウド環境から
•  オンプレミスの自社のシステムから
Datastoreをどこからでも利用可能!
ユースケース 3	
39
Google Cloud Datastore	
Read、Write、Small Operationの回数に制限あり
•  1,000万/日 500/秒まで
   (連絡すれば増やしてもらえるとのこと)
Preview期間中の制限	
40
Google Cloud Datastore	
•  Ushering in the Next Generation of Cloud Computing
•  https://developers.google.com/events/io/sessions/333265959
•  What's New and Cool with Google Compute Engine
•  https://developers.google.com/events/io/sessions/333117643
•  Google Cloud Datastore 公式ドキュメント
•  https://developers.google.com/datastore/docs/overview
41	
参考リンク
Google Compute Engine	
42	
Google Cloud Platform
Google Compute Engine	
•  Googleが提供する IaaS
•  Google I/O初日に一般公開
•  現在 OS は Debian と CentOS を利用可能
•  APIs Discovery Serviceに対応するAPIもあり
概要	
43
PaaS	
IaaS	
Google Compute Engine	
•  Compute EngineはIaaS (Infrastructure as a Service)
•  App EngineはPaaS (Platform as a Service)
IaaSとは?	
44	
作成したアプリケーション	
Webサーバー	
OS	
仮想マシン	
DBサーバー	
ハードウェア	
その他
Google Compute Engine	
•  リージョンとゾーン
•  インスタンス、インスタンスタイプ
•  ディスクタイプ
•  Scratch Disk (旧 Ephemeral Disk)
•  Persistent Disk
用語	
45	
リージョン	
  
us-­‐central1	
ゾーン	
  a	
 ゾーン	
  b	
PD	
PD
Google Compute Engine	
•  Sub-hour Billing
•  Shared-core instances
•  Advanced Routing
•  Persistent Diskの最大サイズ増加
Google I/Oで発表された新機能	
46
Google Compute Engine	
•  インスタンスの利用に対する課金が1分単位に
Sub-hour Billing	
47	
*10分未満の利用の場合には10分間分課金されるので注意
Google Compute Engine	
Shared-core instances	
48	
インスタンスタイプ	
 コア数	
 メモリ	
 ディスク	
 価格($US/h)	
*1. GCEでは1GB は 2^30 バイトとして定義
*2. 共有インスタンスはboot-diskが付属しないのでPersistent Diskの使用が必須
*3. 価格はUSリージョン
•  低価格の共有インスタンスが追加
インスタンスタイプ	
 コア数	
 メモリ	
 ディスク	
 価格($US/h)	
f1-­‐micro	
 共有	
 0.6GB	
  (*1)	
 なし (*2)	
 $0.019	
  (*3)	
g1-­‐small	
 共有	
 1.7GB	
 なし	
 $0.054	
マイクロ	
 共有?	
 613MiB	
  (*4)	
 なし	
 $0.020	
  (*5)	
スモール	
 1	
 1.7GB	
 160GB	
 $0.060	
参考:某社のサービスEが提供する同クラスのインスタンス
*4. およそ0.6GiB (GiB は 2^30 バイト)
*5. 価格は米国東部 オンデマンドインスタンス
Google Compute Engine	
Compute Engineのインスタンスタイプ	
49	
インスタンスタイプ	
 コア数	
 メモリ	
 ディスク	
 価格($US/h)	
f1-­‐micro	
 共有	
 0.6GB	
 なし	
 $0.019	
g1-­‐small	
 共有	
 1.7GB	
 なし	
 $0.054	
n1-­‐standard-­‐1-­‐d	
 1	
 3.75GB	
 420GiB	
 $0.132	
n1-­‐standard-­‐1	
 1	
 3.75GB	
 Diskless	
  (0	
  GB)	
 $0.115	
n1-­‐standard-­‐2-­‐d	
 2	
 7.5GB	
 870GB	
 $0.265	
n1-­‐standard-­‐2	
 2	
 7.5GB	
 Diskless	
  (0	
  GB)	
 $0.23	
n1-­‐standard-­‐4-­‐d	
 4	
 15GB	
 1770GB	
 $0.53	
n1-­‐standard-­‐4	
 4	
 15GB	
 Diskless	
  (0	
  GB)	
 $0.461	
n1-­‐standard-­‐8-­‐d	
 8	
 30GB	
 2	
  x	
  1770GB	
 $1.06	
n1-­‐standard-­‐8	
 8	
 30GB	
 Diskless	
  (0	
  GB)	
 $0.922	
•  他にも High Memory、High CPU とそれぞれに特化したインスタンスがあります
•  「Diskless」はboot-diskにScratch Diskを使えるので、その点「なし」とは意味が異なります。
Google Compute Engine	
•  オンプレミスのデータセンターとCloudをまた
がったアプリケーションの構築
•  複数クラウドでデータをシェア
•  安全に複数のデータセンターを繋ぐ
Advanced Routing	
50
Google Compute Engine	
Persistent Diskの最大サイズが10TBに
51	
1TB	
 10TB
Google Compute Engine	
「有名な競合」とのパフォーマンス比較	
52
Google Compute Engine	
参考:海外サイトによるEC2とのパフォーマンス比較 (1/2)	
53	
起動速度	
 ディスク I/O	
By the numbers: How Google Compute Engine stacks up to Amazon EC2	
* Ephemeral = Scratch Disk
* EC2はスタンダードボリューム
Google Compute Engine	
参考:海外サイトによるEC2とのパフォーマンス比較 (2/2)	
54	
帯域幅	
 レイテンシ	
By the numbers: How Google Compute Engine stacks up to Amazon EC2	
※海外での測定結果です
Google Compute Engine	
EC2との料金比較 (インスタンス)	
55	
Pla,orm	
 インスタンスタイプ	
 コア数	
 メモリ	
 ディスク	
 価格($US/h)	
GCE	
 f1-micro	
 共有	
 0.6GB	
  (*1)	
 0GB	
 $0.019 	
  (*2)	
EC2	
 マイクロインスタンス	
 共有?	
 613MiB	
 0GB	
 $0.020 	
 	
  	
  	
  	
  	
  	
GCE	
 g1-small	
 共有	
 1.7GB	
 0GB	
 $0.054 	
EC2	
 スモール	
 1	
 1.7GiB	
 160GB	
 $0.060 	
 	
  	
  	
  	
  	
  	
GCE	
 n1-standard-1-d	
 1	
 3.75GB	
 420GiB	
 $0.132 	
GCE	
 n1-standard-1	
 1	
 3.75GB	
 0GB	
 $0.115 	
EC2	
 ミディアム	
 1	
 3.75GiB	
 410GB	
 $0.120 	
 	
  	
  	
  	
  	
  	
GCE	
 n1-standard-2-d	
 2	
 7.5GB	
 870GB	
 $0.265 	
GCE	
 n1-standard-2	
 2	
 7.5GB	
 0GB	
 $0.230 	
EC2	
 ラージ	
 2	
 7.5GiB	
 850GB	
 $0.240 	
 	
  	
  	
  	
  	
  	
GCE	
 n1-standard-4-d	
 4	
 15GB	
 1770GB	
 $0.530 	
GCE	
 n1-standard-4	
 4	
 15GB	
 0GB	
 $0.461 	
EC2	
 エクストララージ	
 4	
 15GiB	
 0GB	
 $0.480 	
 	
  	
  	
  	
  	
  	
GCE	
 n1-standard-8-d	
 8	
 30GB	
 2 x 1770GB	
 $1.060 	
GCE	
 n1-standard-8	
 8	
 30GB	
 0GB	
 $0.922 	
EC2	
 ダブルエクストララージ	
 8	
 30GiB	
 0GB	
 $1.000 	
*1. GCEでは1GB は 2^30 バイトとして定義
*2.価格はGCEはUSリージョン、EC2は米国東部 オンデマンドインスタンス (2013/5/30現在)
Google Compute Engine	
EC2との料金比較 (ネットワーク)	
56	
Pla,orm	
 タイプ	
 価格($US/GB)	
 備考	
*1.価格はGCEはUSリージョン、EC2は米国東部 (2013/5/30現在)
GCE	
 Inbound	
 無料	
EC2	
 Inbound	
 無料	
 	
  	
  	
GCE	
 Outbound サービス内 同一リージョン 同一ゾーン	
 無料	
 同一リージョンのGCE以外のクラウド含む	
EC2	
 Outbound サービス内 同一リージョン 同一ゾーン	
 無料	
 同一リージョンのEC2以外のAWS含む	
 	
  	
  	
GCE	
 Outbound サービス内 同一リージョン 別ゾーン	
 $0.01 (*1)	
EC2	
 Outbound サービス内 同一リージョン 別ゾーン	
 $0.01 	
 	
  	
  	
GCE	
 Outbound サービス内 異なるリージョン	
 $0.01 (注→)	
 今だけ。インターネットと同じになる予定	
EC2	
 Outbound サービス内 異なるリージョン	
 $0.02 	
 	
  	
  	
GCE	
 Outbound インターネット 〜1GB	
 $0.12 	
 GCEは無料枠が無い	
EC2	
 Outbound インターネット 〜1GB	
 $0.00 	
 EC2は無料枠がある	
 	
  	
  	
GCE	
 Outbound インターネット 1GB〜1TB	
 $0.12 	
EC2	
 Outbound インターネット 1GB〜1TB	
 $0.12 	
 	
  	
  	
GCE	
 Outbound インターネット 1TB〜10TB	
 $0.11 	
EC2	
 Outbound インターネット 1TB〜10TB	
 $0.12 	
 	
  	
  	
GCE	
 Outbound インターネット 10TB〜40TB	
 $0.08 	
EC2	
 Outbound インターネット 10TB〜40TB	
 $0.09 	
 	
  	
  	
GCE	
 Outbound インターネット 40TB〜100TB	
 $0.08 	
 GCEは10TB以上は固定	
EC2	
 Outbound インターネット 40TB〜100TB	
 $0.07 	
 40TBを超えるとGCEより安くなる	
 	
  	
  	
GCE	
 Outbound インターネット 100TB〜350TB	
 $0.08 	
 GCEは10TB以上は固定	
EC2	
 Outbound インターネット 100TB〜350TB 	
 $0.05 	
 100TBを超えるとさらに下がる
Google Compute Engine	
EC2との料金比較 (ディスク)	
57	
Pla,orm	
 タイプ	
 価格($US/GB/月)	
 備考	
*1.価格はGCEはUSリージョン、EC2は米国東部 (2013/5/30現在)
GCE	
 Provisioned space	
 $0.100 	
EC2	
 スタンダード	
 $0.100 	
EC2	
 プロビジョンド IOPS	
 $0.125 	
 高パフォーマンスのディスク	
Pla,orm	
 タイプ	
 価格($US/million)	
 備考	
GCE	
 I/O Operation	
 $0.100 	
EC2	
 I/O Operation	
 $0.100
Google Compute Engine	
•  Load Balancing
•  Monitoring
今後提供予定の機能	
58
Google Compute Engine	
•  ゾーンの計画メンテナンスの対応が必要
•  この期間はゾーン内のインスタンス・ディスクにアクセス不能
•  実績から推測すると頻度的には数ヶ月に一度
•  同一リージョン内のゾーンに対しては時期をずらしている
•  過去のメンテナンスの期間は二週間ほどと長い
注意点	
59
Google Compute Engine	
パターン 1	
60	
•  Webアプリの構築 (一部PaaSで実現できない、難しい機能がある)
•  Compute EngineをApp Engineのバックグラウンドとして使う
基本は管理コストの低いPaaSを使う	
PaaSで実現できない、難しい機能だけCompute Engineを使う
Frontend	
Backend	
例えば、
・特別なミドルウェアが必要な処理
・長時間のバッチ処理
・GAE・GCE間は帯域使用料タダ!
・GAE・GCE間の回線はきっと速い
・Cloud Datastoreでデータも共有可
・GCEのAPIの呼び出しも簡単
・もう外部のIaaSに頼る必要は無い?
Google Compute Engine	
パターン 2	
61	
•  Webアプリの構築 (PaaSの制限がシステムの要求にまるで合わない)
例えば、フロントエンドでnode.jsやRubyを使いたい
•  Compute EngineをWebのフロントエンドとして使う
管理コストはかかるが自由度が高い
ゾーンのメンテナンスやダウン時にはLBのIPアドレス付替えが必要?	
•  ゾーンをまたがる位置
にLoad Balancerが提
供されれば楽なんだけ
ど(´・ω・`)	
•  Webのフロントエンドは
レイテンシが気になる
し、某クラウドはTokyo
リージョンあるし。。	
リージョン	
ゾーン	
  a	
 ゾーン	
  b	
Web	
 Web	
 Web	
 Web	
Frontend	
Cloud	
  Datastore	
LB	
 LB	
某	
 (チラッチラッ	
壁	
インターネットか
らのアクセス	
ゾーン切替時にIP
付替え?
Google Compute Engine	
パターン 3	
62	
DBサーバーを自前で構築
•  ゾーンの停止に対応するため別ゾーンにレプリケーション
•  レプリケーション時に帯域使用料が発生
Cloud DatastoreかCloud SQL使った方がいいんじゃ・・・?
リージョン	
ゾーン	
  a	
 ゾーン	
  b	
Web	
 Web	
 Web	
 Web	
LB	
 LB	
PD	
PD	
 レプリケーション	
•  Persistent Diskは
ゾーンに紐付く
•  ゾーンをまたがる通
信は有料	
•  それとももっと簡単な
方法はあるか・・・?
Google Compute Engine	
パターン 4	
63	
•  Webアプリの構築 (PaaSだけで要求を満たせる)
•  App Engineだけを使う
PaaSで完結できれば管理コストがかからない	
環境の構築も管理もGoogleがやってくれる
強力な自動スケール機能もある
Frontend	
•  困ったらそこだけGCEを使
うパターン1に移行する
Google Compute Engine	
パターン 5	
64	
•  大量のインスタンスを並列化して大規模な計算処理をする
•  一つのPersistent Diskを複数インスタンスからマウントして参照
一つのディスクのデータを使った並列処理をしやすい
仕組み上Disk I/Oがボトルネックにならない
リージョン	
ゾーン	
PD	
Read	
  Onlyでマウント	
・ビッグデータの分析等
・PDは複数インスタンス
からマウント可能(Read
Only)
・複製された複数の物理
ストレージから参照する
ので大量のインスタンス
から同時にアクセスして
も高速
Google Compute Engine	
•  Ushering in the Next Generation of Cloud Computing
•  https://developers.google.com/events/io/sessions/333265959
•  Supercharge Your Google Compute Engine App with Persistent Disk
•  https://developers.google.com/events/io/sessions/350753683
•  What's New and Cool with Google Compute Engine
•  https://developers.google.com/events/io/sessions/333117643
•  Advanced Packet Routing Techniques in a Google Compute Engine
Network
•  https://developers.google.com/events/io/sessions/333138978
•  Google Compute Engine Pricing (料金)
•  https://cloud.google.com/pricing/compute-engine
•  Amazon EC2 料金表
•  http://aws.amazon.com/jp/ec2/pricing/
•  By the numbers: How Google Compute Engine stacks up to Amazon
EC2 (海外の比較サイト)
•  http://goo.gl/CaLKA	
65	
参考リンク
Google Cloud Platform共通	
•  App Engine、Compute Engine、Cloud Storageが
ISO27001:2005認証取得
•  アジア、南アメリカにデータセンターを追加予定
•  Datastore (& Cloud Datastore) が最大25%値下げ
Google I/O前後のニュースなど	
66
Google Cloud Platform	
ご清聴ありがとうございました
続きはWebで!	
	
Blog @vierjp
http://blog.vier.jp/

Mais conteúdo relacionado

Semelhante a Report of Google I/O 2013 Google Cloud Platform

Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
 

Semelhante a Report of Google I/O 2013 Google Cloud Platform (20)

GoogleCloudPlatform概要
GoogleCloudPlatform概要GoogleCloudPlatform概要
GoogleCloudPlatform概要
 
appengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービス
appengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービスappengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービス
appengine ja night #10 Google AppEngine で作る Google Apps Marketplace 対応サービス
 
Google BigQueryのターゲットエンドポイントとしての利用
Google BigQueryのターゲットエンドポイントとしての利用Google BigQueryのターゲットエンドポイントとしての利用
Google BigQueryのターゲットエンドポイントとしての利用
 
第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリー第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリー
 
Visual Studio2013 でGithub(1) セットアップ~同期
Visual Studio2013 でGithub(1) セットアップ~同期Visual Studio2013 でGithub(1) セットアップ~同期
Visual Studio2013 でGithub(1) セットアップ~同期
 
マーケティングで使えるBigQueryMLテンプレート
マーケティングで使えるBigQueryMLテンプレートマーケティングで使えるBigQueryMLテンプレート
マーケティングで使えるBigQueryMLテンプレート
 
Google Cloud ベストプラクティス:Google BigQuery 編 - 03 : パフォーマンスとコストの最適化
Google Cloud ベストプラクティス:Google BigQuery 編 - 03 : パフォーマンスとコストの最適化Google Cloud ベストプラクティス:Google BigQuery 編 - 03 : パフォーマンスとコストの最適化
Google Cloud ベストプラクティス:Google BigQuery 編 - 03 : パフォーマンスとコストの最適化
 
googleアナリティクス研究課題①
googleアナリティクス研究課題①googleアナリティクス研究課題①
googleアナリティクス研究課題①
 
20201008 GitHub at Microsoft
20201008 GitHub at Microsoft20201008 GitHub at Microsoft
20201008 GitHub at Microsoft
 
Google アナリティクスで SharePointの利用状況を確認する
Google アナリティクスでSharePointの利用状況を確認するGoogle アナリティクスでSharePointの利用状況を確認する
Google アナリティクスで SharePointの利用状況を確認する
 
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送
 
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話
 
WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作
 
App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価
App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価
App engine admin apiを利用したgae%2 f go環境へのデプロイとgcp東京リージョンの性能評価
 
マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介
 
FirebaseAnalytics_BigQuery_Datastudio
FirebaseAnalytics_BigQuery_DatastudioFirebaseAnalytics_BigQuery_Datastudio
FirebaseAnalytics_BigQuery_Datastudio
 
そろそろGCPも・・・ という方に贈るGCP入門
そろそろGCPも・・・ という方に贈るGCP入門そろそろGCPも・・・ という方に贈るGCP入門
そろそろGCPも・・・ という方に贈るGCP入門
 
MuleアプリケーションのCI/CD
MuleアプリケーションのCI/CDMuleアプリケーションのCI/CD
MuleアプリケーションのCI/CD
 

Último

Último (10)

Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

Report of Google I/O 2013 Google Cloud Platform

  • 1. Report of Google I/O 2013 Ryo Yamasaki @vierjp May, 31th 2013 1 Google Cloud Platform
  • 2. •  Blog •  http://blog.vier.jp/ •  Twitter •  @vierjp •  仕事 •  Javaでサーバーサイドの開発をメインにしています。 •  前職はスマホ向けサービス事業者の技術リーダー。 •  Google App Engineを中心にCloud StorageやBigQuery等、 Google Cloud Platformのプロダクトを利用していました。 •  現在フリーなので、特にGoogle Cloud Platform関連のお仕事が あればご連絡いただけますと幸いです。 •  個人でAndroidアプリも公開してます •  WiFi Tunes Sync Ryo Yamasaki 自己紹介 2
  • 3. Google Cloud Platform •  Google App Engine •  Google Cloud Storage •  Google BigQuery •  Google Cloud Datastore •  Google Compute Engine •  Google Cloud Platform共通 Agenda 3
  • 4. Google App Engine 4 Google Cloud Platform
  • 5. Google App Engine •  Webアプリを構築するためのPaaS •  強力な自動スケーリング機能 •  インフラ管理の手間も知識も不要 概要 5
  • 6. Google App Engine •  New Runtime PHP •  Modularized Applications •  Mobile Backend Starter •  Android StudioのCloud Platformサポート Google I/Oで発表された新機能 6
  • 7. Google App Engine •  Python、Java、Goに続きPHPが追加 •  現在 Limited Preview •  PHP Version 5.4.8 (詳細は後述のphpinfo参照) •  AppEngineのDatastoreは現状利用不可 •  Cloud SQLが利用可能 •  後述のCloud Datastoreも利用可能 New Runtime PHP 7
  • 8. Google App Engine •  Limited Previewアカウントで試しました New Runtime PHP 8 •  phpinfo •  PHP Version5.4.8 •  mbstringなし http://phpinfo.vier-test.appspot.com/
  • 9. Google App Engine •  Limited Previewアカウントで試しました New Runtime PHP 9 •  WordPress 日本語版 http://vier-test.appspot.com/ •  日本語の問題はなし •  画像アップロード不可
  • 10. Google App Engine •  制限 •  ローカルファイルシステムへのアクセス不可 •  Cloud StorageのPathに修正が必要 •  ファイルのダイレクトアップロード不可 •  そのままでは「$_FILES」が使えない •  Cloud Storageを使う方法に修正が必要 •  mbstringが使えない •  まだ使えないApp Engineのサービスがある •  ProcessやSystemを操作する関数は使用不可 •  Session情報が突然消える可能性あり New Runtime PHP 10
  • 11. Google App Engine •  Trusted Tester中の「Servers」という機能 •  一つのアプリの中に複数のコンポーネントを 配置可能 •  コンポーネント毎に下記の設定が可能 •  スケーリング •  デプロイ •  バージョニング •  パフォーマンス設定 •  Datastore、Memcache、TaskQueueはコン ポーネント間で共有 Modularized Applications 11
  • 12. Google App Engine •  概要 •  「サーバーサイドのコードを一切書かずに サーバーと連携するAndroidアプリを作る」 ためのApp Engine用アプリ Mobile Backend Starter 12
  • 13. Google App Engine •  特徴 •  サーバー側のコーディングが一切不要 •  コードが公開されているので改修も可能 •  デプロイ環境を構築する必要すら無し •  Web上から直接デプロイ可能 •  Googleアカウントでの認証をサポート •  Google Cloud Messaging(GCM)のサポート •  管理画面から全登録済みクライアントに対して 一斉にメッセージを送信可能 Mobile Backend Starter 13
  • 14. •  Continuous Query •  サーバー側でクエリの結果に影響するデータが更 新されると自動で関連する全クライアントに反映さ れる仕組み Google App Engine Mobile Backend Starter 14 Mobile  Backend  Starter ①更新 ②通知 ③再取得 ③再取得 ③再取得
  • 15. Google App Engine Android Studio の Cloud Platform サポート 15
  • 16. Google App Engine •  Ushering in the Next Generation of Cloud Computing •  https://developers.google.com/events/io/sessions/333265959 •  A New Language for App Engine •  https://developers.google.com/events/io/sessions/333055646 •  Cloud Backend for Your Android Application •  https://developers.google.com/events/io/sessions/333508149 •  Google App Engine for PHP 公式ドキュメント •  https://developers.google.com/appengine/docs/php/ •  Mobile Backend Starter 公式ドキュメント •  https://developers.google.com/cloud/samples/mbs/ •  Blog @vierjp : 27.Google I/Oで発表されたCloud Platformの新機能 •  http://blog.vier.jp/2013/05/google-iogoogle-cloud-platform.html •  Blog @vierjp : 28.Google App Engine for PHP (GAE/PHP) •  http://blog.vier.jp/2013/05/google-app-engine-for-php-gaephp.html •  Blog @vierjp : 29.Google App Engine for PHPでWordPress •  http://blog.vier.jp/2013/05/29google-app-engine-for-phpwordpress.html •  Blog @vierjp : 30.Google App Engine for PHPにおけるポータビリティ •  http://blog.vier.jp/2013/05/30google-app-engine-for-php.html 16 参考リンク
  • 18. Google Cloud Storage •  クラウド上のファイルストレージサービス •  一言で言えば Amazon S3 の Google版 •  自前で無料のキャッシュ機能を持つ 概要 18
  • 19. Google Cloud Storage •  gsutilからマルチスレッドでアップロード •  gsutil cp –m *.txt gs://my_bucket •  さらに先頭の文字でパーティショニング •  gsutil -m cp 0* gs://my_bucket •  gsutil -m cp 1* gs://my_bucket •  gsutil -m cp 2* gs://my_bucket •  ・・・ •  gsutil -m cp 8* gs://my_bucket •  gsutil -m cp 9* gs://my_bucket •  gsutilから分割Upload 1.  split -n 10 big-file big-file-part- 2.  gsutil -m cp big-file-part-* gs://bucket/dir/ 3.  gsutil compose gs://bucket/dir/big-file-part-* gs://bucket/dir/big- file Google Cloud Storageに大量データをアップロードする際のテクニック 19
  • 20. Google Cloud Storage •  S3からローカルにコピー •  gsutil cp s3://my_bucket/*.txt . •  S3からCloud Storageにコピー •  gsutil cp s3://my_bucket/*.txt gs://my_bucket •  Cloud StorageからS3にコピー •  gsutil cp gs://my_bucket/*.txt s3://my_bucket •  S3からCloud Storageへ5ペタByteのデータをコピーした 事例 •  可能な限り速く •  Live Migration(ダウンタイム無しに) •  AppEngine・オンプレミス環境も関連する複雑な事例 Google Cloud Storageに大量データをアップロードする際のテクニック 20
  • 21. Google Cloud Storage •  JSON APIによるバッチリクエスト •  一度のリクエストで複数の命令を投げる手 法 •  大量のオブジェクトに対してまとめてアクセ ス権限を設定したり削除したりする場合等 に有効 Google Cloud Storageに大量データをアップロードする際のテクニック 21
  • 22. Google Cloud Storage •  Offline Disk Import (Limited Preview) Google I/Oで発表された新機能 22 アップロードしたいファイルをハードディスクに 入れてGoogleに送るとGoogle内のネットワーク からアップロードしてくれる 料金は通常のGoogle Cloud Storageの料金に 加えて、HDD毎に「$80」加算されます。
  • 23. Google Cloud Storage 1.  Offline Disk ImportのInterest Formから申し込み 2.  SATAのハードディスクをEncFS(暗号化ファイルシ ステム)でフォーマットする 3.  データをハードディスクにコピーする 4.  Googleに郵送する 5.  Googleが顧客の所有する新しいbucketに  Googleの高速なネットワークを使ってimportする 6.  GoogleがHDDを郵送で返却する Offline Disk Import の手順 23 *現時点ではアメリカに住所がある顧客のみ対象です
  • 24. Google Cloud Storage •  Versioning •  Durable Reduced Availability storage •  30% price drop •  Cloud Console •  Composite Objects •  Notifications •  JSON API •  Offline disk import Google Cloud Storageの最近のリリース一覧 24
  • 25. Google Cloud Storage •  Importing Large Data Sets into Google Cloud Storage •  https://developers.google.com/events/io/sessions/333473305 •  Google Cloud Storage公式ドキュメント •  https://developers.google.com/storage/ •  Offline Disk Import - Google Cloud Storage •  https://developers.google.com/storage/docs/early-access •  Blog @vierjp : 31.Google Cloud Storageに大量データ をアップロードする際のテクニック(Google I/O 2013) •  http://blog.vier.jp/2013/05/google-cloud-storagegoogle-io-2013.html 25 参考リンク
  • 27. Google BigQuery •  大量のデータに対してSQLライクなクエリを 実行して高速かつリアルタイムに結果を取 得することが可能なGoogleのサービス •  350億行のスキャンをインデックスなしに数十秒 で行うことができる •  Webの画面、CUIのツール、REST APIから 実行可能 概要 27
  • 28. Google BigQuery •  AnalyticsとAdSenseとの連携 Google I/Oで発表された新機能 28 BigQueryからAnalyticsとAdSenseのデータを参 照することが可能に
  • 29. Google BigQuery •  現時点でAdSenseのデータを参照可能 •  Adsenseのデータに対するクエリは無料 Google Adsenseのデータを参照する 29
  • 30. Google BigQuery •  2013年9月のリリースを目指している •  エンジニア向けLimited Preview受付中 •  http://goo.gl/QJR9Y Google Analyticsのデータを参照する 30
  • 31. Google BigQuery 1.  標準の管理画面と別の角度から分析可能 2.  Adsense・Analyticsのデータと自社で持つ別 の情報をJoinして分析可能 この機能の意義 31
  • 32. Google BigQuery •  3月に追加された機能 •  Big JOIN •  Large Group Aggregations •  Trusted Tester中の機能 •  App Engine Datastore Backup to BigQuery Import (一部機能は提供済み) 最近追加された機能・実装予定の機能 32
  • 33. Google BigQuery •  Google Analytics and AdSense Data Analysis in BigQuery •  https://developers.google.com/events/io/sessions/332940014 •  AdSense BigQuery Integration Guide – AdSense •  https://developers.google.com/adsense/bigquery •  BigQuery 公式ドキュメント •  https://developers.google.com/bigquery/ •  Blog @vierjp : 23.BigQueryの新機能 (2013/03/15) •  http://blog.vier.jp/2013/03/bigquery-20130315.html •  Blog @vierjp : 32.Google BigQueryでAnalyticsとAdSenseの データを分析する(Google I/O 2013) •  http://blog.vier.jp/2013/05/32google-bigqueryanalyticsadsensegoogle.html 33 参考リンク
  • 35. Google Cloud Datastore •  App EngineのDatastoreを単独で利用可能 •  PythonとJavaはProtocol Buffer APIを利用可能 •  他の言語からはJSON APIを利用可能 概要 35
  • 36. Google Cloud Datastore •  App EngineのDatastoreと同じもの •  クエリの速度がデータ量に影響しない •  データは複数データセンターにレプリケートされる •  計画されたダウンタイムはなし •  メンテナンスフリー •  etc… •  環境や言語を問わず利用可能 •  Compute Engine、オンプレミス環境からも利用可能 特徴 36
  • 37. Google Cloud Datastore App EngineのバックエンドとしてCompute Engineを利用 •  App Engineでしづらい処理をCompute Engineで行う事が容易 •  長時間のバッチ処理をCompute Engineで行う •  DatastoreのデータをBigQueryに転送する前に加工する 両方の環境からデータの共有が可能! ユースケース 1 37
  • 38. Google Cloud Datastore Compute Engineから使うNoSQLデータベースとして •  App Engineの対応言語に縛られずにDatastoreを利用可能 •  例えばCompute Engine上に node.jsのサーバーを構築したり •  データベースサーバー運用コストを減少 (自前で構築するのと比べて) ユースケース 2 38
  • 39. Google Cloud Datastore App Engine、Compute Engine以外の環境から利用する •  別のクラウド環境から •  オンプレミスの自社のシステムから Datastoreをどこからでも利用可能! ユースケース 3 39
  • 40. Google Cloud Datastore Read、Write、Small Operationの回数に制限あり •  1,000万/日 500/秒まで    (連絡すれば増やしてもらえるとのこと) Preview期間中の制限 40
  • 41. Google Cloud Datastore •  Ushering in the Next Generation of Cloud Computing •  https://developers.google.com/events/io/sessions/333265959 •  What's New and Cool with Google Compute Engine •  https://developers.google.com/events/io/sessions/333117643 •  Google Cloud Datastore 公式ドキュメント •  https://developers.google.com/datastore/docs/overview 41 参考リンク
  • 43. Google Compute Engine •  Googleが提供する IaaS •  Google I/O初日に一般公開 •  現在 OS は Debian と CentOS を利用可能 •  APIs Discovery Serviceに対応するAPIもあり 概要 43
  • 44. PaaS IaaS Google Compute Engine •  Compute EngineはIaaS (Infrastructure as a Service) •  App EngineはPaaS (Platform as a Service) IaaSとは? 44 作成したアプリケーション Webサーバー OS 仮想マシン DBサーバー ハードウェア その他
  • 45. Google Compute Engine •  リージョンとゾーン •  インスタンス、インスタンスタイプ •  ディスクタイプ •  Scratch Disk (旧 Ephemeral Disk) •  Persistent Disk 用語 45 リージョン   us-­‐central1 ゾーン  a ゾーン  b PD PD
  • 46. Google Compute Engine •  Sub-hour Billing •  Shared-core instances •  Advanced Routing •  Persistent Diskの最大サイズ増加 Google I/Oで発表された新機能 46
  • 47. Google Compute Engine •  インスタンスの利用に対する課金が1分単位に Sub-hour Billing 47 *10分未満の利用の場合には10分間分課金されるので注意
  • 48. Google Compute Engine Shared-core instances 48 インスタンスタイプ コア数 メモリ ディスク 価格($US/h) *1. GCEでは1GB は 2^30 バイトとして定義 *2. 共有インスタンスはboot-diskが付属しないのでPersistent Diskの使用が必須 *3. 価格はUSリージョン •  低価格の共有インスタンスが追加 インスタンスタイプ コア数 メモリ ディスク 価格($US/h) f1-­‐micro 共有 0.6GB  (*1) なし (*2) $0.019  (*3) g1-­‐small 共有 1.7GB なし $0.054 マイクロ 共有? 613MiB  (*4) なし $0.020  (*5) スモール 1 1.7GB 160GB $0.060 参考:某社のサービスEが提供する同クラスのインスタンス *4. およそ0.6GiB (GiB は 2^30 バイト) *5. 価格は米国東部 オンデマンドインスタンス
  • 49. Google Compute Engine Compute Engineのインスタンスタイプ 49 インスタンスタイプ コア数 メモリ ディスク 価格($US/h) f1-­‐micro 共有 0.6GB なし $0.019 g1-­‐small 共有 1.7GB なし $0.054 n1-­‐standard-­‐1-­‐d 1 3.75GB 420GiB $0.132 n1-­‐standard-­‐1 1 3.75GB Diskless  (0  GB) $0.115 n1-­‐standard-­‐2-­‐d 2 7.5GB 870GB $0.265 n1-­‐standard-­‐2 2 7.5GB Diskless  (0  GB) $0.23 n1-­‐standard-­‐4-­‐d 4 15GB 1770GB $0.53 n1-­‐standard-­‐4 4 15GB Diskless  (0  GB) $0.461 n1-­‐standard-­‐8-­‐d 8 30GB 2  x  1770GB $1.06 n1-­‐standard-­‐8 8 30GB Diskless  (0  GB) $0.922 •  他にも High Memory、High CPU とそれぞれに特化したインスタンスがあります •  「Diskless」はboot-diskにScratch Diskを使えるので、その点「なし」とは意味が異なります。
  • 50. Google Compute Engine •  オンプレミスのデータセンターとCloudをまた がったアプリケーションの構築 •  複数クラウドでデータをシェア •  安全に複数のデータセンターを繋ぐ Advanced Routing 50
  • 51. Google Compute Engine Persistent Diskの最大サイズが10TBに 51 1TB 10TB
  • 53. Google Compute Engine 参考:海外サイトによるEC2とのパフォーマンス比較 (1/2) 53 起動速度 ディスク I/O By the numbers: How Google Compute Engine stacks up to Amazon EC2 * Ephemeral = Scratch Disk * EC2はスタンダードボリューム
  • 54. Google Compute Engine 参考:海外サイトによるEC2とのパフォーマンス比較 (2/2) 54 帯域幅 レイテンシ By the numbers: How Google Compute Engine stacks up to Amazon EC2 ※海外での測定結果です
  • 55. Google Compute Engine EC2との料金比較 (インスタンス) 55 Pla,orm インスタンスタイプ コア数 メモリ ディスク 価格($US/h) GCE f1-micro 共有 0.6GB  (*1) 0GB $0.019  (*2) EC2 マイクロインスタンス 共有? 613MiB 0GB $0.020             GCE g1-small 共有 1.7GB 0GB $0.054 EC2 スモール 1 1.7GiB 160GB $0.060             GCE n1-standard-1-d 1 3.75GB 420GiB $0.132 GCE n1-standard-1 1 3.75GB 0GB $0.115 EC2 ミディアム 1 3.75GiB 410GB $0.120             GCE n1-standard-2-d 2 7.5GB 870GB $0.265 GCE n1-standard-2 2 7.5GB 0GB $0.230 EC2 ラージ 2 7.5GiB 850GB $0.240             GCE n1-standard-4-d 4 15GB 1770GB $0.530 GCE n1-standard-4 4 15GB 0GB $0.461 EC2 エクストララージ 4 15GiB 0GB $0.480             GCE n1-standard-8-d 8 30GB 2 x 1770GB $1.060 GCE n1-standard-8 8 30GB 0GB $0.922 EC2 ダブルエクストララージ 8 30GiB 0GB $1.000 *1. GCEでは1GB は 2^30 バイトとして定義 *2.価格はGCEはUSリージョン、EC2は米国東部 オンデマンドインスタンス (2013/5/30現在)
  • 56. Google Compute Engine EC2との料金比較 (ネットワーク) 56 Pla,orm タイプ 価格($US/GB) 備考 *1.価格はGCEはUSリージョン、EC2は米国東部 (2013/5/30現在) GCE Inbound 無料 EC2 Inbound 無料       GCE Outbound サービス内 同一リージョン 同一ゾーン 無料 同一リージョンのGCE以外のクラウド含む EC2 Outbound サービス内 同一リージョン 同一ゾーン 無料 同一リージョンのEC2以外のAWS含む       GCE Outbound サービス内 同一リージョン 別ゾーン $0.01 (*1) EC2 Outbound サービス内 同一リージョン 別ゾーン $0.01       GCE Outbound サービス内 異なるリージョン $0.01 (注→) 今だけ。インターネットと同じになる予定 EC2 Outbound サービス内 異なるリージョン $0.02       GCE Outbound インターネット 〜1GB $0.12 GCEは無料枠が無い EC2 Outbound インターネット 〜1GB $0.00 EC2は無料枠がある       GCE Outbound インターネット 1GB〜1TB $0.12 EC2 Outbound インターネット 1GB〜1TB $0.12       GCE Outbound インターネット 1TB〜10TB $0.11 EC2 Outbound インターネット 1TB〜10TB $0.12       GCE Outbound インターネット 10TB〜40TB $0.08 EC2 Outbound インターネット 10TB〜40TB $0.09       GCE Outbound インターネット 40TB〜100TB $0.08 GCEは10TB以上は固定 EC2 Outbound インターネット 40TB〜100TB $0.07 40TBを超えるとGCEより安くなる       GCE Outbound インターネット 100TB〜350TB $0.08 GCEは10TB以上は固定 EC2 Outbound インターネット 100TB〜350TB $0.05 100TBを超えるとさらに下がる
  • 57. Google Compute Engine EC2との料金比較 (ディスク) 57 Pla,orm タイプ 価格($US/GB/月) 備考 *1.価格はGCEはUSリージョン、EC2は米国東部 (2013/5/30現在) GCE Provisioned space $0.100 EC2 スタンダード $0.100 EC2 プロビジョンド IOPS $0.125 高パフォーマンスのディスク Pla,orm タイプ 価格($US/million) 備考 GCE I/O Operation $0.100 EC2 I/O Operation $0.100
  • 58. Google Compute Engine •  Load Balancing •  Monitoring 今後提供予定の機能 58
  • 59. Google Compute Engine •  ゾーンの計画メンテナンスの対応が必要 •  この期間はゾーン内のインスタンス・ディスクにアクセス不能 •  実績から推測すると頻度的には数ヶ月に一度 •  同一リージョン内のゾーンに対しては時期をずらしている •  過去のメンテナンスの期間は二週間ほどと長い 注意点 59
  • 60. Google Compute Engine パターン 1 60 •  Webアプリの構築 (一部PaaSで実現できない、難しい機能がある) •  Compute EngineをApp Engineのバックグラウンドとして使う 基本は管理コストの低いPaaSを使う PaaSで実現できない、難しい機能だけCompute Engineを使う Frontend Backend 例えば、 ・特別なミドルウェアが必要な処理 ・長時間のバッチ処理 ・GAE・GCE間は帯域使用料タダ! ・GAE・GCE間の回線はきっと速い ・Cloud Datastoreでデータも共有可 ・GCEのAPIの呼び出しも簡単 ・もう外部のIaaSに頼る必要は無い?
  • 61. Google Compute Engine パターン 2 61 •  Webアプリの構築 (PaaSの制限がシステムの要求にまるで合わない) 例えば、フロントエンドでnode.jsやRubyを使いたい •  Compute EngineをWebのフロントエンドとして使う 管理コストはかかるが自由度が高い ゾーンのメンテナンスやダウン時にはLBのIPアドレス付替えが必要? •  ゾーンをまたがる位置 にLoad Balancerが提 供されれば楽なんだけ ど(´・ω・`) •  Webのフロントエンドは レイテンシが気になる し、某クラウドはTokyo リージョンあるし。。 リージョン ゾーン  a ゾーン  b Web Web Web Web Frontend Cloud  Datastore LB LB 某 (チラッチラッ 壁 インターネットか らのアクセス ゾーン切替時にIP 付替え?
  • 62. Google Compute Engine パターン 3 62 DBサーバーを自前で構築 •  ゾーンの停止に対応するため別ゾーンにレプリケーション •  レプリケーション時に帯域使用料が発生 Cloud DatastoreかCloud SQL使った方がいいんじゃ・・・? リージョン ゾーン  a ゾーン  b Web Web Web Web LB LB PD PD レプリケーション •  Persistent Diskは ゾーンに紐付く •  ゾーンをまたがる通 信は有料 •  それとももっと簡単な 方法はあるか・・・?
  • 63. Google Compute Engine パターン 4 63 •  Webアプリの構築 (PaaSだけで要求を満たせる) •  App Engineだけを使う PaaSで完結できれば管理コストがかからない 環境の構築も管理もGoogleがやってくれる 強力な自動スケール機能もある Frontend •  困ったらそこだけGCEを使 うパターン1に移行する
  • 64. Google Compute Engine パターン 5 64 •  大量のインスタンスを並列化して大規模な計算処理をする •  一つのPersistent Diskを複数インスタンスからマウントして参照 一つのディスクのデータを使った並列処理をしやすい 仕組み上Disk I/Oがボトルネックにならない リージョン ゾーン PD Read  Onlyでマウント ・ビッグデータの分析等 ・PDは複数インスタンス からマウント可能(Read Only) ・複製された複数の物理 ストレージから参照する ので大量のインスタンス から同時にアクセスして も高速
  • 65. Google Compute Engine •  Ushering in the Next Generation of Cloud Computing •  https://developers.google.com/events/io/sessions/333265959 •  Supercharge Your Google Compute Engine App with Persistent Disk •  https://developers.google.com/events/io/sessions/350753683 •  What's New and Cool with Google Compute Engine •  https://developers.google.com/events/io/sessions/333117643 •  Advanced Packet Routing Techniques in a Google Compute Engine Network •  https://developers.google.com/events/io/sessions/333138978 •  Google Compute Engine Pricing (料金) •  https://cloud.google.com/pricing/compute-engine •  Amazon EC2 料金表 •  http://aws.amazon.com/jp/ec2/pricing/ •  By the numbers: How Google Compute Engine stacks up to Amazon EC2 (海外の比較サイト) •  http://goo.gl/CaLKA 65 参考リンク
  • 66. Google Cloud Platform共通 •  App Engine、Compute Engine、Cloud Storageが ISO27001:2005認証取得 •  アジア、南アメリカにデータセンターを追加予定 •  Datastore (& Cloud Datastore) が最大25%値下げ Google I/O前後のニュースなど 66