もう、概念的なところだけは何となく理解して、
周りでしゃべっていることだけでも理解していこうと精一杯です。
で、mongoDB。
まずは、どんな製品かって言うと、
KVSっぽい高速な処理速度と、RDBの様な機能も捨てない、
って感じでしょうか。
KVSっぽいって部分は、テーブルなどは無く、
ドキュメント指向と呼ばれるように、JSON形式のデータで格納する。
{"id": 10001, "name": "ゲス山ゲス男"}
※実際の書き込みは、JSONをバイナリにした感じらしい。
で、コストの高いトランザクションはなく、機能としてJOINとかも無い。
で、RDBぽいってところは、
KVSがキーの完全一致でデータを引っ張ってくるに対して、
mongoDBは、SQLでいうと、select/where/order byや、group byとかいけるみたい。
db.table_name.find({id:10001})
ということで、
割とシンプルな読み書きだけで、でも、アクセスはどえらい多い様なシステムには、
向いてるんじゃ無いでしょうか。
私が見た中では、ログオン履歴、購入履歴など、
ログ保存のサーバーとして運用されておりました。
その他、シャーディングと呼ばれる、
複数のサーバーにデータの分散して保存する機能なども、
自動でスケーリングしてくれる機能などもあるようです。
|
|
うん、このmongoDBは使いどころはありそうですね。