SlideShare a Scribd company logo
元Oracle Master Platinumが
Cloud Spannerを触ってみた
熊野 良(Ryo Kumano)
Groovenauts,Inc. / GCPUG Fukuoka
熊野 良 (Ryo Kumano)
    Twitter: @ryok0607
2014/06 〜 株式会社グルーヴノーツ JOIN
- 肩書きは 「サーバエンジニア・データベースエンジニア」
- GCP上で稼動している自社サービスのインフラ設計・構築・運用を担当
- 2015/08 〜 東京 -> 福岡に移住
2016/12 〜 GCPUG Fukuoka 運営 JOIN
- 他の運営メンバと発表会やもくもく会の開催など
過去(5年以内)に携わった業務
- 国内大手B2Cサイトのインフラ設計・構築・運用・DB設計・チューニング
など
自己紹介
祝!ピクシブ様
福岡オフィスご開設
おめでとうございます!!
(画像はイメージです)
Cloud Spannerの話の前に
自社の宣伝を
させてください!
https://www.magellanic-clouds.com/blocks/
Agenda
● CloudSpanner概要
● 既存DBからの乗換えって?
● 性能ってどんなもんなの?
Cloud Spannerとは
- Google社のクラウドサービス(GCP)で提供開始されたデータベース
(2017/3/3時点beta)
- Google社ではもっと前から社内での利用実績あり。
- 地球規模の大規模分散を実現し、世界中にサーバを分散。
- NoSQLのスケーラビリティとRDBの一貫性を両立させた。
- トランザクション処理はMVCCではなくtimestampを用いて制御する。
- サーバの時刻同期はGPSや原子時計を用いて、どのサーバもズレがないようにし
ている
ズルいとは思うのですが、詳細は有識者(中井 悦司さん)の資料を
見ていただくのがまずは良いと思います。
https://www.slideshare.net/enakai/spanner-72217077
既存RDBからの乗換えって?
今の所、しんどいです。(まだbetaなので今後に期待)
- DB接続ドライバが新規になる
- RDS->Auroraのようにコードの再利用不可
- Table設計、特にPrimaryKeyを再検討する必要がある
- PKにNOT NULL制約が付与されず、 Indexも貼られない。
- AUTO_INCREMENTやSEQUENCEのような自動採番機能がない。
- というか従来のID採番の設計だと書込サーバが偏りボトルネックになる恐れがある。
https://cloud.google.com/spanner/docs/best-practices#choosing_a_primary_key
- その他
- Table毎のアクセス制限ができない
- View機能がない
- Point in time Recoveryができない
- DML文がサポートされてない   ...など結構クセが強い。
性能ってどんなもんなの?
カタログスペック上、パフォーマンスは特別に優れいているわけではない。
- Read 10,000 QPS (Query Per Seconds)
- Write 2,000 QPS
ん?『各Spannerノード』と言っている?
一般的なDBのMaster-Slave構成
ということは?
Spannerインスタンスを増やせば増やすほどパフォーマンスが上がると推測。
疑問: Readはまぁ分かる。
Writeも本当にパフォーマンス上がるのか??
ReadOnl
y
Instance
Write
Instance
replication
ReadOnly
Instanceは
増やせる
Write
Instanceは
増やせない
計測項目・計測方法
カタログスペックに記載されている 1KB/Record のデータをINSERTする処理を
8台のGCE (n1-highmem-8)から実行する。
Spannerのnode数を1台ずつ増やしていき、性能(QPS)を計測する。
Spanner node 1台
カタログスペック 2,000 QPS
に対して 8,000 QPS出てる。
話が違う!(いい意味で)
Spanner node 2台
13,000QPSを突破。
確かに性能があがっている。
Spanner node 3台
15,000QPSを突破。
順調に右肩上がりに伸びてる。
Spanner node 4台
20,000QPSを突破。
一般的なシステムでは十分。
Spanner node 5台
25,000QPSを突破。
まだ伸びるか!?
Spanner node 6台
遂に 30,000QPSを突破!
すごくね?すごくね??
Spanner node 7台
あれ・・・?
数値が伸びなくなってきた。
Spanner node 6台以降は頭打ち
9 nodeまで試しましたが
30,000 QPS前後を
行ったり来たり。
頭打ちした原因
Spanner側の限界ではなく、Bench Server側の限界の可能性が高い。
Bench Serverの台数を増やすか、ツールのチューニングを行うことで
より高い数値が出せるのではと推測。
こっち側が限界で
パツった!
30,000 QPS以上
いけるはず。
まとめ
● Cloud Spannerは既存のRDBからの移行が難しいので
既存システムの移行ではなく、新規システムへの
導入検討がよさそう。
● とはいえまだbetaなのか運用する上での機能は心もとない。
機能追加と共に導入時期を見計らいたい。
● 性能は今の所底が見えない。
よほど当たっているゲームサービス等でなければ
数字的には耐えられると判断。
ということで、今後の機能追加に超期待しています!!
ご清聴ありがとうございました。

More Related Content

PDF
O/Rマッパーによるトラブルを未然に防ぐ
PDF
40歳過ぎてもエンジニアでいるためにやっていること
PPTX
Apache 2.4 新機能 “SSL編”
PDF
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
PDF
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
PDF
イミュータブルデータモデル(入門編)
PDF
うちのRedmineの使い方(2)
PDF
Redmine にいろいろ埋め込んでみた
O/Rマッパーによるトラブルを未然に防ぐ
40歳過ぎてもエンジニアでいるためにやっていること
Apache 2.4 新機能 “SSL編”
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
イミュータブルデータモデル(入門編)
うちのRedmineの使い方(2)
Redmine にいろいろ埋め込んでみた

What's hot (20)

PDF
IT系エンジニアのためのプレゼンテーション入門
PDF
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
PDF
PG-REXで学ぶPacemaker運用の実例
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
KEY
やはりお前らのMVCは間違っている
PPTX
トランザクションの設計と進化
PDF
ブルックスのいう銀の弾丸とは何か?
PDF
systemd 再入門
PDF
運用業務でのRedmine
PDF
Spring Security 5.0 解剖速報
PPTX
マイクロサービスにおける 結果整合性との戦い
PDF
それはYAGNIか? それとも思考停止か?
PDF
【BS15】.NET アップグレード アシスタントで簡単にできます! .NET Framework アプリの .NET 6 へのマイグレーション
PDF
オンプレML基盤on Kubernetes パネルディスカッション
PDF
インターネットの仕組みとISPの構造
PDF
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
PDF
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
PDF
大規模DCのネットワークデザイン
PPTX
2016/12/15 SQLチューニングと対戦格闘ゲームの類似性について語る。 JPOUG Advent Calendar 2016 Day 15
PDF
REST API のコツ
IT系エンジニアのためのプレゼンテーション入門
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
PG-REXで学ぶPacemaker運用の実例
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
やはりお前らのMVCは間違っている
トランザクションの設計と進化
ブルックスのいう銀の弾丸とは何か?
systemd 再入門
運用業務でのRedmine
Spring Security 5.0 解剖速報
マイクロサービスにおける 結果整合性との戦い
それはYAGNIか? それとも思考停止か?
【BS15】.NET アップグレード アシスタントで簡単にできます! .NET Framework アプリの .NET 6 へのマイグレーション
オンプレML基盤on Kubernetes パネルディスカッション
インターネットの仕組みとISPの構造
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
「Redmineの運用パターン集~私に聞くな、チケットシステムに聞け」
大規模DCのネットワークデザイン
2016/12/15 SQLチューニングと対戦格闘ゲームの類似性について語る。 JPOUG Advent Calendar 2016 Day 15
REST API のコツ
Ad

Viewers also liked (9)

PDF
Snowflake Elastic Data Warehouse as a Service
PPTX
GoogleCloudPlatform概要
PDF
インフラエンジニアのこれまでとこれから
PDF
Datalab and colaboratory
PDF
福岡クラウドUG-BigQuery
PPTX
RDBのDBAから見た GCP Managed Database
PDF
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
PDF
こわくない Git
PDF
インフラエンジニアってなんでしたっけ(仮)
Snowflake Elastic Data Warehouse as a Service
GoogleCloudPlatform概要
インフラエンジニアのこれまでとこれから
Datalab and colaboratory
福岡クラウドUG-BigQuery
RDBのDBAから見た GCP Managed Database
Google Container Engine (GKE) & Kubernetes のアーキテクチャ解説
こわくない Git
インフラエンジニアってなんでしたっけ(仮)
Ad

Similar to 元OracleMasterPlatinumがCloudSpanner触ってみた (20)

PPTX
CloudSQL v2は デキる子なのか?
PDF
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
PPTX
Cloud Identity-Aware Proxy
PPTX
GCPのサーバレス
PDF
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
PDF
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
PDF
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
PDF
20190201 multicloud opening_share
PDF
Cedec2021_モバイルゲーム事業で 大規模スクラム(LeSS)を 導入するまでの1年間とその後
PDF
How to develop a huge Single Page Application
PPTX
広島出身のアラフォーエンジニアが福岡の20代エンジニアに贈る6つのコトバ
PDF
ゲームインフラとGoogle Cloud Platformと酒!
PDF
SAPテクノロジーのプラットフォームはMicrosoft Azureで決まり!
PDF
SCRUMMASTER THE BOOK翻訳活動における、リモート x モブ実践
PDF
「八日市にGoogleがやってくる」shig apps様セミナー
PDF
WordPressの進化とWordPress名古屋コミュニティの進化
PPTX
クラウドネイティブが行なういまどきWebサービス開発
PPTX
@nullpopopo が考える、未来のプレゼン | 明日に向かって
PDF
Being healthy dev and ops in cookpad - Issei Naruta
PDF
さくらとエンジニアの幸せな未来を実現するための組織づくり(Developers Summit 2016 KANSAI)
CloudSQL v2は デキる子なのか?
SQLおじさん(自称)がBigQueryのStandard SQLを使ってみた
Cloud Identity-Aware Proxy
GCPのサーバレス
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
スタートアップだからこそ使うAWS(第5回JAWS-UG Nagoya)
20190201 multicloud opening_share
Cedec2021_モバイルゲーム事業で 大規模スクラム(LeSS)を 導入するまでの1年間とその後
How to develop a huge Single Page Application
広島出身のアラフォーエンジニアが福岡の20代エンジニアに贈る6つのコトバ
ゲームインフラとGoogle Cloud Platformと酒!
SAPテクノロジーのプラットフォームはMicrosoft Azureで決まり!
SCRUMMASTER THE BOOK翻訳活動における、リモート x モブ実践
「八日市にGoogleがやってくる」shig apps様セミナー
WordPressの進化とWordPress名古屋コミュニティの進化
クラウドネイティブが行なういまどきWebサービス開発
@nullpopopo が考える、未来のプレゼン | 明日に向かって
Being healthy dev and ops in cookpad - Issei Naruta
さくらとエンジニアの幸せな未来を実現するための組織づくり(Developers Summit 2016 KANSAI)

元OracleMasterPlatinumがCloudSpanner触ってみた