SlideShare une entreprise Scribd logo
1  sur  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/

Contenu connexe

Similaire à Report of Google I/O 2013 Google Cloud Platform

GoogleCloudPlatform概要
GoogleCloudPlatform概要GoogleCloudPlatform概要
GoogleCloudPlatform概要Kumano Ryo
 
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 対応サービスNobuhiro Nakajima
 
Google BigQueryのターゲットエンドポイントとしての利用
Google BigQueryのターゲットエンドポイントとしての利用Google BigQueryのターゲットエンドポイントとしての利用
Google BigQueryのターゲットエンドポイントとしての利用QlikPresalesJapan
 
第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリー第49回HTML5勉強会 Google I/O 2014サマリー
第49回HTML5勉強会 Google I/O 2014サマリーTakuya Oikawa
 
Visual Studio2013 でGithub(1) セットアップ~同期
Visual Studio2013 でGithub(1) セットアップ~同期Visual Studio2013 でGithub(1) セットアップ~同期
Visual Studio2013 でGithub(1) セットアップ~同期Tomo Mizoe
 
マーケティングで使える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 Cloud Platform - Japan
 
googleアナリティクス研究課題①
googleアナリティクス研究課題①googleアナリティクス研究課題①
googleアナリティクス研究課題①Kent Nabeshima
 
20201008 GitHub at Microsoft
20201008 GitHub at Microsoft20201008 GitHub at Microsoft
20201008 GitHub at MicrosoftIssei Hiraoka
 
Google アナリティクスで SharePointの利用状況を確認する
Google アナリティクスでSharePointの利用状況を確認するGoogle アナリティクスでSharePointの利用状況を確認する
Google アナリティクスで SharePointの利用状況を確認するAkihiro Ehara
 
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出
Google Cloud ベストプラクティス:Google BigQuery 編 - 02 : データ処理 / クエリ / データ抽出Google Cloud Platform - Japan
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshopDaisuke Sugai
 
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送
[Cloud OnAir] BigQuery へデータを読み込む 2019年3月14日 放送Google Cloud Platform - Japan
 
Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Logic Apps と Api Apps の話
Logic Apps と Api Apps の話Sunao Tomita
 
WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作WordPressで考えるこれからのコンテンツ制作
WordPressで考えるこれからのコンテンツ制作Takami Kazuya
 
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東京リージョンの性能評価Kumano Ryo
 
マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介マイクロソフトの提供するMA6向けAPIのご紹介
マイクロソフトの提供するMA6向けAPIのご紹介Sunao Tomita
 
そろそろGCPも・・・ という方に贈るGCP入門
そろそろGCPも・・・ という方に贈るGCP入門そろそろGCPも・・・ という方に贈るGCP入門
そろそろGCPも・・・ という方に贈るGCP入門Shinya Sasaki
 
MuleアプリケーションのCI/CD
MuleアプリケーションのCI/CDMuleアプリケーションのCI/CD
MuleアプリケーションのCI/CDMuleSoft Meetup Tokyo
 

Similaire à 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
 

Dernier

論文紹介: 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 Gamesatsushi061452
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
論文紹介: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...Toru Tamaki
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介: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 UnderstandingToru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 

Dernier (11)

論文紹介: 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
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
論文紹介: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...
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 
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の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 

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