私は単純なアプリケーションのためにMongoDBを手に取っていて、いくつかの望ましくない動作を経験しています。基本的には、私のコレクションは多くの(文字列、int)タプルで構成されています。平均でそれぞれが文書として(_idを含む)64バイト未満を取るべきです。文字列に応じてコレクションにインデックスが1つあります。MongoDBのサイズが爆発的なのはなぜですか?
約800万のドキュメントを追加した後、私は2.5ギガバイトの制限(私は32ビットOSを持っています)を打ったので、私は新しいものを追加できません。私は何か間違っているように思えます。なぜなら、私はそれがその大きさになるべき理由を見ないからです。
トラブルシューティングの方法に関するご意見やご提案はありますか? 明らかに、私はすぐに64ビットOSに切り替えるつもりですが、まずこの動作を理解したいと思います。
アップデート(2):デシベル一度
は "いっぱいに"、これは、コレクションの統計情報の出力コマンドです:
> db.hits.stats()
{
"ns" : "testdb.hits",
"count" : 8716619,
"size" : 611603992,
"avgObjSize" : 70.16527761509366,
"storageSize" : 828148736,
"numExtents" : 21,
"nindexes" : 2,
"lastExtentSize" : 145841408,
"paddingFactor" : 1,
"flags" : 1,
"totalIndexSize" : 1007568128,
"indexSizes" : {
"_id_" : 360636416,
"article_-1" : 646931712
},
"ok" : 1
}
、それはstatsコマンドデシベルの出力です:
> db.stats()
{
"collections" : 3,
"objects" : 8716625,
"avgObjSize" : 70.16526281674386,
"dataSize" : 611604284,
"storageSize" : 828153856,
"numExtents" : 23,
"indexes" : 2,
"indexSize" : 1007568128,
"fileSize" : 3154116608,
"ok" : 1
}
更新(3): DBファイル自体:
-rw------- 1 mongodb nogroup 64M 2011-11-14 14:06 testdb.0
-rw------- 1 mongodb nogroup 128M 2011-11-14 14:06 testdb.1
-rw------- 1 mongodb nogroup 256M 2011-11-14 14:06 testdb.2
-rw------- 1 mongodb nogroup 512M 2011-11-14 14:06 testdb.3
-rw------- 1 mongodb nogroup 512M 2011-11-14 14:06 testdb.4
-rw------- 1 mongodb nogroup 512M 2011-11-14 14:06 testdb.5
-rw------- 1 mongodb nogroup 512M 2011-11-14 11:20 testdb.6
-rw------- 1 mongodb nogroup 512M 2011-11-10 10:51 testdb.7
-rw------- 1 mongodb nogroup 16M 2011-11-14 14:05 testdb.ns
'db.that_collection.stats()'の出力は何ですか(質問に追加)? –
@SergeiTulentsevが添付されました。ありがとうございます。 – r0u1i
これは1.8Mのドキュメントしかありません。このようなコレクションがいくつかありますか? –