将集合转换为固定集合
要将非固定集合转换为使用限制集合,可以使用convertToCapped 数据库命令。
convertToCapped 命令在操作期间会锁定数据库。其他锁定相同数据库的操作将被阻塞,直到 convertToCapped 操作完成。
关于此任务
通常,TTL(生存时间)索引比限制集合提供更好的性能和更多的灵活性。TTL索引根据日期类型的字段值和索引的TTL值来过期和删除普通集合中的数据。
限制集合序列化写操作,因此其并发插入、更新和删除性能比非限制集合差。在创建限制集合之前,请考虑是否可以使用TTL索引。
开始之前
创建一个名为 log2 的非限制集合
db.createCollection("log2")
步骤
1
将集合转换为限制集合
要将log2集合转换为限制集合,请运行convertToCapped命令
db.runCommand( { convertToCapped: "log2", size: 100000 } )
log2集合的最大大小为100,000字节。
2
确认集合是限制集合
要确认log2集合现在是限制集合,请使用isCapped()方法
db.log2.isCapped()
true