全5383文字
PR

 Cloud Spannerは米Google(グーグル)のGoogle Cloudで利用できる「NewSQL」のマネージドサービスです。NewSQLとは2010年ごろから出てきた、これまでにない特性を持ったデータベース製品のカテゴリーを指す言葉です。RDBMS(リレーショナルデータベース管理システム)の特徴であるACID特性(Atomicity=原子性、Consistency=一貫性、Isolation=独立性、Durability=耐久性)と、NoSQLの特徴である更新性能の拡張性を兼ね備えています。

ACID特性をサポートし、拡張性も高い
ACID特性をサポートし、拡張性も高い
図 NewSQLの位置付け
[画像のクリックで拡大表示]

RDBの一貫性とNoSQLの拡張性を両立

 RDBMSは厳密なトランザクション管理、堅牢で復元可能なデータ永続性を備え、現在でも多く利用されています。同時並行でトランザクションが実行されても、誤ったデータ読み書きをせずに処理できることが、データベースの基本的な特性として求められてきた背景があります。

 これに対してACID特性のうち一貫性を犠牲に、つまりタイミングによっては更新前の古いデータを読むことを許容して、性能の拡張性を高めたのがNoSQLです。RDBMSのほとんどが更新処理を単一ノードでのみ実行することで一貫性を保つのに対し、NoSQLは一貫性を犠牲にして、複数のノードで並行して更新処理を実行できるようにして拡張性を得ました。

 しかし業務において一貫性は非常にニーズが高い特性です。RDBMSが中心的なデータベースの地位を保ち、NoSQLはRDBMSが苦手な部分を補完する用途で、RDBMSと組み合わせて使うのが主流です。長らく一貫性と更新性能の拡張性は両立しないと考えられていましたが、その常識を覆したのがNewSQLであり、その初期にグーグルによって開発され、クラウド上のデータベースサービスとして2017年に登場したのがCloud Spannerです。