by @crumbjp
当サイトは日本におけるMongoDBの普及と発展を目的に、MongoDB JPによって運営されています。

MongoDBとは+

MongoDBは10genにより開発/サポートされているC++で実装されたオープンソースのデータベースです。
いわゆるNoSQLに分類されるタイプのデータベースで対障害性とスケーラビリティに優れ、またNoSQLでは珍しくインデックスをサポートしており表結合(JOIN)は出来ないながらRDBMSの様な使い方が出来る事も大きな特徴です。

主な特徴+

耐障害性(Durability)+

MongoDBはレプリカセットと呼ばれる冗長構成(クラスタ)を組むことができます。
レプリカセットには唯一のプライマリノード(PRIMARY)とセカンダリノード(SECONDARY)複数を含める事ができ、クラスタに対する書き込みは全てPRIMARYに対して行われます。
PRIMARYに対する更新は速やかに全てのSECONDARYにコピーされ安全に保持されます。

レプリカセットでは万一PRIMARYを喪失した場合でも自動的にそれを検知し任意のSECONDARYPRIMARYに昇格させます。
この動作によりレプリカセットは単一障害点(SPOF)を持たない極めて高い対障害性を実現しています。

スケーラビリティ(Scalability)+

MongoDBはレプリカセットとシャーディング(Sharding)の負荷分散の仕組みを用意しておりシステムの負荷に応じて柔軟に対応する事ができます。

レプリカセット+
レプリカセットのデータは全てのSECONDARYにコピーされているので負荷に応じた数のSECONDARYを用意しSECONDARYからデータの取得する事で負荷分散ができます。

>もっと詳しく

Sharding+
コレクションを水平分割する機能です。分割数やバランシングなどは通常MongoDBが自動的に行います。
これによりレプリカセットでは対応出来ない規模のリクエストやデータ量に対応する事が出来ます。

>もっと詳しく

ライセンス+

MongoDBのライセンスは一部にGNU AGPL v3.0が含まれています。

GNU AGPL v3.0ライセンスは商用利用が難しくMongoDB導入に際し(主に法務部と)揉め易いライセンスです。
しかし実際は他のオープンソースDBと同様にほとんど制約無しで利用する事ができます。

>詳しくはこちら(ライセンス)で解説します。