SQL vs NoSQL、グーグルにおける戦い(前編)。Google I/O 2012

2012年7月9日


SQLNoSQL -Google I/O 2012 - SQL vs NoSQL: Battle of the Backends - YouTube

Google I/O 2012SQLNoSQL使



Alfred FullerNoSQL
fig

クラウドはフォルトトレラントでメンテナンス不要、パッチも私たちが適用しており、利用者は運用について心配する必要がない、といったメリットがある。

データのレプリケーションや地域分散でデータも保全され、インターネット経由のアクセスも確保している。

fig

Google App Engineは、開発が容易でスケーラブル、メンテナンス不要のアプリケーションプラットフォームだ。App Engineからは、リレーショナルデータベースの「Cloud SQL」、NoSQLの「Datastore」、そしてオブジェクトストレージの「CloudStorage」にアクセスできる。

fig

DatastoreはGmailやGoogle Docsと同じテクノロジー

Datastoreは、GmailやGoogle Docsと同じテクノロジーで構築されたストレージであり、月間3兆回ものオペレーションが行われている。すべてが管理されたNoSQLソリューションだ。

fig

一方、Cloud SQLもすべてが管理され、ピュアなMySQLデータベース互換のデータベースだ。

fig

Ken AshcraftSQLKenAlfred

Cloud SQLNoSQL使
fig

Cloud SQLNoSQL

NoSQL

SQL


SQLCloud SQLSQL

NoSQLNoSQLSQLSQLContainsAny
fig

(SQL担当)Cloud SQLは、SQLをフルサポートしているし、例えばグループバイで街ごとの平均年齢を集計したりできる。

fig

NoSQLMapReduceMapShuffleReduce使

SQLSQL
fig

トランザクション機能の比較

(SQL担当)多くのNoSQLがトランザクションをサポートしていないよね。サポートしていても1行だけに限ったトランザクションで、本物のトランザクションじゃない。

(NoSQL担当)Datastoreは本物のトランザクションをサポートしているさ。「Entityグループ」という行をまたがったトランザクションもある。

例えば、ゲームのプレイヤーがポーション(聖水)を飲んでヘルスを回復し、ポーションが削除される、という動作は、「db.transactional」を使って1つのトランザクションとして記述できる。

fig

SQL  

NoSQLCross-Entity

xgtrue
fig

(SQL担当)もちろんトランザクションはSQLでも記述できる。start Transcation; commit;のあいだに書けばいい。

fig

トランザクションやロックを使うケースでは、Cloud SQLのほうがよりうまく処理できるといえるね。

fig

DatastoreBigTable BigTable使


NoSQLDatastoreMegastore使MegastoreEntity使

Entity
fig

NoSQLMySQL

SQLCloud SQL

AMySQL

AB
fig

(SQL担当)三連勝か。このまま楽勝だな。

fig

NoSQL

NoSQLSQL vs NoSQLGoogle I/O 2012

あわせて読みたい

NoSQL RDB データベース Google




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


10


IT 2024  SI
IT 2024  
MySQL 9.0 JavaScript
AIAISudoLang
RustDartRust Core 1.0Rust便Dart使
BGMSlackGoogle20246
RubyJavaJRubyRed Hat
AWS Direct Connect400Gpbs
GoogleWebWebLadybird Browser InitiativeGitHub
GoogleGoogle SheetsWebAssembly2