【ニューエスキューエル】

NewSQL とは?

最終更新:
💡 SQLの安心感とNoSQLのパワーを両取りした「いいとこどり」DB
📌 このページのポイント
RDBMS / NoSQL / NewSQL の位置づけ スケーラビリティ → 整合性(ACID) → RDBMS PostgreSQL / MySQL Oracle / SQL Server NoSQL MongoDB / Cassandra Redis / DynamoDB NewSQL CockroachDB / TiDB Spanner / YugabyteDB +スケール +ACID 整合性◎ スケール△ 整合性△ スケール◎ 整合性◎ スケール◎(いいとこ取り)
RDBMS・NoSQL・NewSQL の位置づけ比較イメージ
ひよこ ひよこ
NewSQLって、SQLNoSQLの他にまだ種類があるの?
ペンギン先生 ペンギン先生
そうなんだ。従来のSQL(RDBMS)は整合性は完璧だけどスケールしにくい。NoSQLはスケールするけど整合性が弱い。「両方の良いとこ取りしよう!」というのがNewSQLだよ
ひよこ ひよこ
そんなうまい話があるの?何かトレードオフはないの?
ペンギン先生 ペンギン先生
もちろんゼロじゃないよ。分散トランザクションの仕組みが複雑だから、単一ノードの遅延は従来のRDBMSより大きくなることがある。でもGoogleのSpannerが「地球規模の分散DB」を実現してから、技術的に現実味を帯びたんだ
ひよこ ひよこ
具体的にどんなデータベースがあるの?
ペンギン先生 ペンギン先生
Google Spanner、CockroachDBTiDBYugabyteDBあたりが有名だよ。PostgreSQLMySQL互換のものが多くて、既存アプリからの移行がしやすいのも人気の理由だね
ひよこ ひよこ
じゃあ普通のRDBMSはもう使わなくていいの?
ペンギン先生 ペンギン先生
いやいや、小〜中規模のシステムなら従来のPostgreSQLMySQLで十分だよ。NewSQLが輝くのは「グローバル展開で複数リージョンにまたがる」「大量のトランザクションをさばきつつ整合性も必要」といったケースだね
ひよこ ひよこ
使い分けが大事なんだね!
ペンギン先生 ペンギン先生
そのとおり。CAP定理を超える魔法はないけど、NewSQLは「実用上ほぼ完璧に近いバランス」を実現しているんだ。マイクロサービスクラウドネイティブが当たり前の今、選択肢として知っておくべき技術だよ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「NewSQL」って出てきたら「SQLの良さを残したままスケールアウトできるDB」と思えればだいたいOK!
📖 おまけ:英語の意味
「NewSQL」 = 新SQL
💬 2011年に451 Groupのアナリストが提唱した分類名だよ。SQLを捨てたNoSQLに対して「SQLは捨てない、でも進化する」というメッセージが込められているよ
← 用語集にもどる