CouchDB と MongoDB の比較 #2 取り扱い可能なデータ

項目 CouchDB MongoDB
データタイプ null,bool,number,string,array,object(, binary) たくさん

これまた、Mongoのほうがよさげ。

CouchDBJSONなのでJSONで規定されるデータタイプに準じます。ただし、添付ファイル機能があるので、binary も(いろいろ制約がありますが)一応可能、ということで。Date がないのが致命的なので、書き込む際はDate型は"YYYY/MM/DD HH:MM:SS +ZZZZ"形式にシリアライズして、読み込むときは毎回 Date.parse() するなどの工夫が必要です。ドライバライブラリの中にはこのあたりをうまくやってくれるものもあるかと思います。

一方で、MongoDB では BSON でデータタイプを決めています。ドライバから利用するので、その言語のデータ型に適当にマップしてくれるものと想像ができます。で、http://www.mongodb.org/display/DOCS/BSON#BSON-ElementDataTypes を見る限り、JSONよりも表現が豊富です。Date もあるし。Timestamp もあるので、ドキュメント管理には向いているじゃないか。。。