예, 최대 크기와 함께 capped 매개변수를 사용할 수 있습니다. 다음은 구문입니다 -
db.createCollection("yourCollectionName",{capped:true,size:yourSizeInBytes,max:howManyRecordsYouWant})
먼저 capped:true −
를 사용하여 컬렉션을 생성해 보겠습니다.> db.createCollection("limitTheNumberOfRecordsDemo",{capped:true,size:200024,max:3}) { "ok" : 1 }
이제 문서로 컬렉션을 만들 것입니다 -
> db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"James Brown"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e601b50a6c6dd317adad") } > db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"Sam Williams"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e60bb50a6c6dd317adae") } > db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"David Miller"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e612b50a6c6dd317adaf") } > db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"Carol Taylor"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e61ab50a6c6dd317adb0") } > db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"Adam Smith"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e649b50a6c6dd317adb1") } > db.limitTheNumberOfRecordsDemo.insertOne({"ClientName":"John Doe"}); { "acknowledged" : true, "insertedId" : ObjectId("5cd9e64fb50a6c6dd317adb2") }
다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. 위의 최대 크기로 상한선을 설정했기 때문에 여기에서는 위 컬렉션에서 3개의 레코드만 가져옵니다. -
> db.limitTheNumberOfRecordsDemo.find();
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : ObjectId("5cd9e61ab50a6c6dd317adb0"), "ClientName" : "Carol Taylor" } { "_id" : ObjectId("5cd9e649b50a6c6dd317adb1"), "ClientName" : "Adam Smith" } { "_id" : ObjectId("5cd9e64fb50a6c6dd317adb2"), "ClientName" : "John Doe" }