前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >MongoDB-TTL索引

MongoDB-TTL索引

作者头像
字母哥博客
发布2020-09-23 11:15:34
发布2020-09-23 11:15:34
59800
代码可运行
举报
运行总次数:0
代码可运行

MongoDB-TTL索引

  • TTL = Time To Live
  • 一个设置了TTL的集合,集合将在指定的时间段之后或者在指定的时间点将自动删除文档
  • TTL索引设置在一个Date类型的字段上

指定时间段之后删除文档

  • 在createdAt字段上建立TTL索引,文档1小时之后被删除
代码语言:javascript
代码运行次数:0
运行
复制
db.log_events.createIndex( { "createdAt": 1 }, { expireAfterSeconds: 3600 } )

当我们把下面的文档insert到log_events集合,设置createdAt为当前时间

代码语言:javascript
代码运行次数:0
运行
复制
db.log_events.insert( {
   "createdAt": new Date(),
   "logEvent": 2,
   "logMessage": "Success!"
} )

当文档从insert时间点到当前时间大于expireAfterSeconds时,该文档将被删除。

在指定的时间点删除文档

代码语言:javascript
代码运行次数:0
运行
复制
db.log_events.createIndex( { "expireAt": 1 }, { expireAfterSeconds: 0 } )

当我们把下面的文档insert到log_events集合,设置createdAt为July 22, 2013 14:00:00.

代码语言:javascript
代码运行次数:0
运行
复制
db.log_events.insert( {
   "expireAt": new Date('July 22, 2013 14:00:00'),
   "logEvent": 2,
   "logMessage": "Success!"
} )

当时间点到达July 22, 2013 14:00:00时,文档将被自动删除

喜欢 (1)or分享 (0)

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2016-02-04),如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MongoDB-TTL索引
    • 指定时间段之后删除文档
    • 在指定的时间点删除文档
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档