おれ、Unity2Dでゲーム作るんだ。

Unity2Dをメインに、覚書などを記事にしていきます。

ん、NoSQLって?それ美味しいの?

いろんなシステムを見せてもらって、

ざっと、

 

MySQL + memcached

 

の組み合わせで設計してありました。

memcachedってのは、要はキャッシュらしく、

リクエストをディスクアクセス無しに、メモリ上で打ち返してくれるもの。

ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール

ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール

 

「これ、いいじゃないですか!」と思っていたところ、

あるシステムでは、mongoDBってのを使っていまして、

どうやらNoSQLっていうシステムらしい。

 

NoSQL : RDBじゃないデータベース

 

つまり、リレーションしない代わりに、パフォーマンスをあげたシステムみたい。

あっちのテーブルと、こっちのテーブルのデータを、キーを条件にくっつけて出力みたいなことを端っからしないらしい。

 

見せてもらったシステムの中には、

 

「こんなテーブル設計だったら、KVSでいいよね」

 

って言われてるのもありました。

KVSってのは、キーとデータの1ペアでデータを格納しているシステムで、NoSQL群の一つらしいですが、トランザクションは苦手っぽいので、皮肉として聞いておきました。

NOSQLの基礎知識 (ビッグデータを活かすデータベース技術)

NOSQLの基礎知識 (ビッグデータを活かすデータベース技術)

 

 

まだ、NoSQLに関しては、ふわーっとしていますが、いろいろ種類があるようです。

  • KVS
  • テーブル指向型
  • ドキュメント指向型

などなど、KVS以外はどういったモノか理解できてません。。。

 

とにかく、今回は、

 

MySQL + memcachedも良いけど、

どえらい大量なデータを扱う場合はNoSQL系と組み合わせるのが吉

 

ということのようでした。

No Only SQLだそうです。