0

私はmongodbが初めてです。コード スニペットを次に示します。

MongoClient mongo = new MongoClient("localhost", 27017);
DB db = mongo.getDB("testdb");
DBCollection collection = db.getCollection("user");

db.getCollection("user")場合、「user」という名前の既存のコレクションがある場合、このコレクションが返されます。「user」が存在しない場合はgetCollection("user")、新しいコレクションを作成します。ここで、作成するコレクションのタイプを知りたいと思いgetCollectionます。getCollectionキャップされたコレクションを返しますか?

私はmongodbのマニュアルを読みました:

メソッドを使用して、キャップ付きコレクションを明示的に作成する必要がありますcreateCollection()

getCollectionこれは、によって作成されたコレクションがキャップされたコレクションではないことを意味しますか?

また、知りたい:

  1. 32 ビット システムでの DBcollection の最大デフォルト サイズは?
  2. データベース内のコレクションの最大数はいくつですか?
4

2 に答える 2

1

MongoDB は、説明した手法を使用しない限り、上限付きコレクションを作成しません (API またはシェルを使用して作成できます)。

コレクションのデフォルトの最大サイズ? 32ビットシステムで約2GB。ただし、10gen は実稼働システムに 32 ビット ビルドを推奨していません (こちらを参照)。

コレクションの最大数はもう少し複雑であり、ドキュメントで最もよく説明されています。

于 2013-04-09T01:20:28.407 に答える
0

Mongodb キャップ コレクションには非常に多くの制限があります。リンクhttp://docs.mongodb.org/manual/core/capped-collections/を参照してください。同じ目的を達成するのに役立つTTLをお勧めします。TTL の詳細については、http: //docs.mongodb.org/manual/tutorial/expire-data/ を参照してください。

于 2013-04-09T01:54:42.107 に答える