更改固定集合的大小
新版本6.0.
要更改固定集合的大小,请使用 collMod
命令的 cappedSize
选项。 cappedSize
以字节为单位指定,必须大于 0
并小于或等于 1024^5
(1PB).
如果 cappedSize
小于集合的当前大小,MongoDB 将在下一个插入操作中删除多余的文档。
关于此任务
通常,与固定大小的集合相比,TTL(生存时间)索引 提供更好的性能和更高的灵活性。TTL 索引根据日期类型字段的值和索引的 TTL 值使数据从常规集合中过期并删除。
固定大小的集合将写入操作序列化,因此比非固定大小的集合具有更差的并发插入、更新和删除性能。在创建固定大小的集合之前,请考虑是否可以使用 TTL 索引。
开始之前
创建一个名为 log
的固定大小的集合,其最大大小为 2,621,440 字节
db.createCollection( "log", { capped: true, size: 2621440 } )
步骤
运行以下命令以将 log
集合的最大大小设置为 5,242,880 字节
db.runCommand( { collMod: "log", cappedSize: 5242880 } )