Google Cloud Platform プログラマ 設計 開発・基盤

RDBとNoSQLいいとこ取りCockroachDB

  1. HOME >
  2. 開発・基盤 >
  3. Google Cloud Platform >

RDBとNoSQLいいとこ取りCockroachDB

概要

CockeroachDBというデータベースの紹介です。
CockroachDBという名前はゴキブリデータベースです。私の感想としては名前で使いたくないというイメージを持ってしまいますが機能はものすごくいいものです。
MySQLやPostgreSQLといったRDBとスケールが簡単にできるNoSQLのいいところどりをしたすごくいいDBです。
RDBとNoSQLのいいところどりをしたDBをNewSQLと言います。

CockroachDBとは

元々、ゴキブリのようにしぶとくなかなかダウンしないということから名付けられたようです。
それにCloud Spannerのクローンを目指したDBですのですごいデータベースであるということです。
概要でも記載いましたがOracleやMySQL、PostgreSQLのようにSQLがかけて運用できるRDBのいい部分と
MongoDBやRedis、BigQueryといったサーバ同士を連携させスケールさせて大規模な情報を処理するNoSQLのいい部分を取り入れたデータベースです。
具体的にはクラウド環境では分散してデプロイすることでデータセンター規模の障害があっても継続稼働してくれます。
しかもスケーラビリティも高くNoSQLなのにSQLがかけます。
スケーラビリティの高いスケールできてRDBのようにSQLが書けるデータベースをNewSQLと呼びます。
ちなみにCockroachDBはほとんど落ちることがないことが前提で作成されています。
まず、複数代のサーバーで構成されていればダウンすることはないでしょう。

NewSQL

CockroachDB パフォーマンス
NewSQLとはNoSQLにSQL機能の両方を利用することのできる便利な機能です。
NewSQLはRDBの機能を使えるので外部結合(join)もできます。
Left JoinもできればInner Joinもできるし寒くエリーも使えます。
複数サーバーを一つのサーバーと見立ててよりスケールさせることもできます。
同じNewSQLと言われるデータベースには以下の2つがあります。

  • Google Cloud Spanner
  • Microsoft CosmosDB

RDBとNoSQLの悪いところ

RDBはスケールアウトしづらくモノシリックな作りになっています。NoSQLは一貫性のあるトランザクション処理には不向きです。
悪い部分をなくすためのNewSQLが現れました。RDBMSとNoSQLの両方の良いところのみを採用しています。

具体的な良いところ

具体的にどこが良いところなのかというと
スケールが容易にでき、RDBのように正確なトランザクションにも答えられるということです。

総括

先ほども紹介したのですがNewSQLはMicrosoftが出しているAzule CosmosDBがあります。
クラウド上のDBです。
現状はCloud SpannerやCosmosDBは料金設定が高めのため、導入する企業がまだ少ないとは思いますが今後はさらにNewSQLが増えていき便利になっていくのではないでしょうか。
そして、今回の主役であるCockroachDBはマネージドサービスがあるので企業がこのサービスを使うときも増えてきそうな予感がします。

システムエンジニアランキング 仮想通貨ランキング にほんブログ村 IT技術ブログへ にほんブログ村 IT技術ブログ IT技術メモへ にほんブログ村 IT技術ブログ Webエンジニアへ

-Google Cloud Platform, プログラマ, 設計, 開発・基盤

Copyright© スリーネクスト , 2020 All Rights Reserved.