TTL索引(time-to-live index)允许为每一个文档设置一个超时时间,文档超过这个时间就会被删除。
在ensureIndex中指定expireAfterSecs选项就可以创建一个TTL索引:
1
|
>db.foo.ensureIndex({“lastUpdated”:1},{“expireAfterSecs”:60*60*24}) |
上述命令就为集合foo的lastUpdated字段上创建了一个TTL索引,如果文档的lastUpdated字段为日期类型,当服务器的时间比文档的lastUpdated字段中的时间晚24小时,文档就会被删除。
当TTL建立后可以使用collMod命令修改TTL索引的超时时间:
1
|
>db.runCommand({“collMod”:”indexName”,”lastUpdated”:3600)
|
本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1601637,如需转载请自行联系原作者