在我的应用程序中,我使用MongoDB来存储用户文档和这些文档的编辑历史记录(修订)。
为此,我使用了两个集合:data
和data_revisions
。每次用户对data
集合中的文档进行更改时,都会将原始文档复制到data_revisions
集合中,并添加对data
集合中原始项目的引用
我正在寻找一种“最佳实践”解决方案,以仅在data_revisions
集合中保留特定数量的“修订”并清除旧值。我想保留例如最多5条记录(无论创建日期如何)。
我可以选择最后5个项目,检查最旧项目的创建日期,然后删除所有较旧的项目,但是也许有更优雅的方法吗?