我有一個時間敏感數據的數據庫。 x時間後刪除條目是否有「最佳做法」?大概30分鐘,但也許24小時。我已經考慮過間隔時間和東西,但這似乎是一個懶惰的解決方案,可以快速消耗資源。在Meteor應用程序的特定時間集合中刪除mongo條目
回答
間隔是正確的解決方案。但是,爲了不消耗資源,以及爲了防止服務器重新啓動,請不要爲要刪除的每個元素創建新的時間間隔。相反,運行一個全球性的間隔,以便清除在一定時期內的所有元素:
var clear = function() {
var min = new Date(new Date() - DURATION);
Documents.remove({
createdAt: {$lt: min}
});
};
Meteor.startup(function() {
clear();
Meteor.setInterval(clear, INTERVAL);
});
哪裏DURATION
是毫秒文件應留在DB的數量降到最低,並且INTERVAL
是你想多長時間進行清除。
好的。聽起來不錯。謝謝您的幫助!我已將其標記爲接受的答案。 – DustinRiley 2014-10-08 15:53:10
流星在參考什麼?我是否需要擁有這個依賴才能使其工作?謝謝!這正是我需要的。 – AlexanderGriffin 2016-09-09 18:58:10
@AlexanderGriffin:我想我不明白你的問題。代碼示例使用Meteor API,但我描述的方法當然可以在任何環境中使用。 – 2016-09-09 19:28:01
- 1. 刪除刪除特定集合項目
- 2. 在Meteor應用程序中安排Mongo收集清理
- 3. 刪除Mongo的條目
- 4. 如何在Meteor應用程序之間共享MongoDB集合?
- 5. Meteor/Mongo - 如何從mongo集合中找到並返回特定字段?
- 6. MongoDb:刪除特定集合
- 7. 如何將位置字段應用於Meteor mongo中的集合?
- 8. 在Meteor中,如何從非Mongo Collection中刪除項目?
- 9. 刪除特定條目
- 10. 如何從Meteor的列表集合中刪除項目?
- 11. 刪除表中的特定條目
- 12. 聚合物和應用程序存儲:刪除條目按鈕
- 13. 在特定日期/時間從應用程序中刪除數據
- 14. 如何用mongodb-erlang驅動程序在Erlang中刪除mongo集合?
- 15. 從集合中刪除特定文檔
- 16. 在#yammer中從應用程序目錄中刪除/刪除應用程序
- 17. Meteor Mongo查詢集合中數組的子集
- 18. 如何刪除特定的mysql條目?
- 19. 刪除特定的CName條目[PowerShell]
- 20. 在集合中刪除對象數組中的對象mongo db
- 21. 如何使用FlowType檢查Meteor中的Mongo集合?
- 22. 刪除MetroStyle應用程序中的BackStack條目
- 23. 從開關應用程序菜單中刪除應用程序條目
- 24. 在序列化爲JSON時排除集合中的特定項目
- 25. 重載刪除,在特定程序中
- 26. 刪除雙條圖中的特定條
- 27. 我的應用程序的添加/刪除程序中的多個條目
- 28. 在不刪除Squirrel.Windows安裝程序中的應用程序的情況下刪除卸載條目
- 29. 刪除所有行與特定條目
- 30. C#防火牆,刪除特定條目
您是否考慮在檢索數據時過濾數據,而不是實際刪除數據? – stubailo 2014-10-08 00:34:02
我有,但與數據量有關的可能性,它會很快凌亂。 – DustinRiley 2014-10-08 01:28:33