LoginSignup
0
0

More than 3 years have passed since last update.

Cloud Spanner の覚え書き

Posted at

はじめに

機会があり Spanner について調べたので、その覚え書き。

Spanner とは

端的に Spanner を説明するなら、こんな感じ。

  • 分散データベースである
  • リレーショナルデータベースっぽい
  • ACID準拠のデータベースである
  • おおよそ、SQLデータベースって感じ
  • CAP定義でいうと、CP(CAは、99.999%の可用性を前提)

既存RDBMS を Spanner へ移行するなら

Spanner 向けにシステム構築しないと扱うのは難しそうな感じ。
→ 既存のRDBMSを、気楽に載せ替えるっていうのは難しそう。

Spanner のトランザクション管理

Oracle Database でいう SCN は、TrueTime(※複数リージョン間での時刻同期を実現できる)を使っている。
トランザクション動作は、@kumagi さんの Spanner が分かりやすかった。Commit Wait を使ってデータ一貫性を保証している。

感想

システムを「イチから作れるよ」というなら Spanner も選択肢に入るかな?
ただ現行のDB向けの仕組み(Frameworkとか)を用意しているものは、このあたりから作り直しになるため、やはり「現行(RDBMS)ものから Spanner へ」というのはハードルが高そう。
但し、「コレからシステム作る」、「新しい概念で作ってみたい」ということであれば採用を検討しても良さそう:thumbsup:

とはいえ「分散型DBの良さをあやかったRDB」には聞こえるのでキラキラしそうな Database(※) にみえちゃう:sparkling_heart:
(※)乱暴ですけど、CAP定義でいうなら分散型データベースなのに、全要件(一貫性、可用性、分断耐性)を満たす Database ってこと。

世界中のどこからでもデータを管理できちゃうってことだよなあ。これはキラキラしちゃう:blush: Spanner は、そこを目指すデータベースなのかも知れないなあ:sparkles:

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0