0

以下のコード サンプルのように、1 つのレコードを mongodb データベースに繰り返し保存する node.js アプリケーションがあります。データ レコードのサイズは実際には数 MB ですが、任意の時点で 1 つのコレクションには 1 つのレコードしかありません。それでも、サーバーのディスク容量がなくなるまで、データベースのサイズは継続的に増加します。

_db.collection('myCollection', function(err, collection) {
  collection.remove({}, function(err, result) {
    collection.insert(myData);
  });
});

このデータを管理するためのより良い方法があることを認識しており、月に数回データベースを修復するだけで問題を解決できますが、mongodb がこの状況でスペースを自動的に再利用しない理由について、私は本当に興味がありました。

4

1 に答える 1

1

この問題を回避する 1 つの方法は、コレクションに最大サイズを設定することです...コレクションには常に 1 つのレコードしかないためです。次のようなことを試してください:

_db.createCollection("myCollection", {size:100000});

ここでMongoDBのディスク使用量について少し読むことができます: Excessive Disk Space

于 2012-06-15T04:05:50.313 に答える