限制mongoDb集合中的记录数

时间:2016-04-13 13:53:01

标签: node.js mongodb

我有mongoDb集合,它包含如图所示的记录     here

要求此集合每个'ExternalId'最多应有4条记录。 如果集合有'ExternalId'4的4条记录,我调用插入操作来插入'ExternalId'4的新记录,那么我需要删除'ExternalId'4的现有的第四条记录,并将新的记录保存在Collection中。

是否可以通过mongoDb功能 如果我必须在节点中以编程方式进行,那么我应该选择哪种方式

1 个答案:

答案 0 :(得分:3)

你在这里有一个好主意,我建议你使用MongoDB上限集合 https://docs.mongodb.org/manual/core/capped-collections/

这是一个循环集合,删除最旧的文档并添加最新的文档,这种类型的集合最多使用硬盘旋转的性质,通常很快。

db.createCollection("log", { capped : true, size : 1024, max : 4 } )