下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當前位置:軟件下載吧 > 數據庫 > DB2 > MongoDB自動刪除過期數據的方法(TTL索引)

MongoDB自動刪除過期數據的方法(TTL索引)

時間:2024-02-13 10:24作者:下載吧人氣:19

前序:

最近由于公司業務需求,對于3個月前的過期數據需要進行刪除動作,以釋放空間和方便維護

本來想的是使用crontab寫個腳本定時執行,但是看到Mongo本身就有自動刪除過期數據的功能,所以還是用一下吧

這個方法就是使用TTL索引,后續我再寫一個腳本定時刪除的任務,關于TTL索引的更多使用實例,大家可以參考學習這篇文章:

介紹:

TTL索引是MongoDB中一種特殊的索引, 可以支持文檔在一定時間之后自動過期刪除,目前TTL索引只能在單字段上建立,并且字段類型必須是date類型或者包含有date類型的數組(如果數組中包含多個date類型字段,則取最早時間為過期時間)

官網介紹鏈接:https://docs.mongodb.com/v3.2/core/index-ttl/

機制:

當你在集合中某一個字段建立TTL索引后,后臺會有一個單線程,通過不斷查詢(默認60s一次)索引的值來判斷document是否有過期,并且刪除文檔的動作還依據mongod實例的負載情況,如果負載很高,可能會稍微延后一段時間再刪除。

還有一個需要注意的地方,在復制集成員中,TTL后臺線程只刪除primary的過期數據,如果此實例變為secondary角色,則后臺線程閑置

創建TTL索引方法:

和普通索引的創建方法一樣,只是會多加一個屬性而已

例:在log_events的集合中,createTime 字段上建立一小時后過期的TTL索引

>db.log_events.createIndex( { “createTime”: 1 }, —字段名稱
{ expireAfterSeconds: 60*60 } ) —過期時間(單位秒)
>db.log_events.getIndexes() —查看索引
[
{
“v” : 1,
“key” : {
“_id” : 1
},
“name” : “_id_”,
“ns” : “tt.t1”
},
{
“v” : 1,
“key” : {
“createTime” : 1
},
“name” : “createTime_1”,
“ns” : “tt.t1”,
“expireAfterSeconds” : 3600
}
]

標簽MongoDB,自動,刪除,過期,數據,方法,TTL,索引

相關下載

查看所有評論+

網友評論

網友
您的評論需要經過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 国产亚洲美女精品久久久久| 国产手机精品一区二区| 四虎成年永久免费网站| 久久99精品久久久久子伦小说| 黄色免费在线观看网址| 星空无限传媒好闺蜜2| 国产成人无码区免费内射一片色欲 | 散步乳栓项圈尾巴乳环小说| 国产丝袜视频一区二区三区| 久久久久亚洲av成人无码| 足本玉蒲团在线观看| 撒尿bbwbbw| 制服丝袜第五页| a级黄色毛片视频| 洗澡与老太风流69小说| 国内精品久久久久久久久| 亚洲成A人片在线观看无码| 窝窝午夜色视频国产精品东北| 欧美一级视频在线| 国产成人精品免费午夜app| 久久成人免费电影| 色多多视频网站| 少妇精品久久久一区二区三区| 免费在线观看黄网站| 97碰在线视频| 极品虎白女在线观看一线天| 国产午夜鲁丝片av无码免费| 中文字幕精品一二三四五六七八| 美女大量吞精在线观看456| 女神捕电影高清在线观看| 亚洲精品中文字幕无码蜜桃| 综合激情网五月| 日韩免费观看的一级毛片| 四虎影视成人永久在线观看| 一区二区三区四区精品视频| 污污在线免费观看| 国产欧美精品一区二区三区-老狼 国产欧美精品一区二区三区-老狼 | 久久超碰97人人做人人爱| 蜜桃视频一区二区| 奶大灬舒服灬太大了一进一出| 亚洲欧美日韩网站|