当前位置:   article > 正文

mongodb每天上亿数据量定期清理

mongodb中,删除了100g的数据,如果执行compact命令,大概会耗时多久

背景:mongodb(应用运营数据分析与自动自助化支持平台)每分钟有30w~40w的insert,20w~30w的update。数据保留一天,一天之前的数据可以清理。一天的数据量大概1亿左右。由于数据量较大,清理数据对系统造成了较大影响,入库会出现堵塞。经过和开发多次讨论,尝试了不同的方案。最终选择了合适的清理方式,系统也开始比较稳定地运行。

除了这个mongodb库外,也遇到其他库询问关于mongodb如何进行数据清理问题。这里将常见的清理方法列出来供大家参考。

清理方法:

  1. 采用定期一分钟删除一次的方法。方法如下:

    1. "op" : "remove",
    2. "ns" : "fla.logGset",
    3. "query" : {
    4. "time" : {
    5. "$lt" : NumberLong(1495693140),
    6. "$gte" : NumberLong(1495693080)
    7. }
    8. },

对于数据量较小的表,这种方法比较合适。但是对于数据量较较大的库,删除速度太慢,跟不上入库的速度。比如mrcache这个库,单次删除执行时间需要大概10分钟~20分钟不等。这个

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/煮酒与君饮/article/detail/878435
推荐阅读
相关标签
  

闽ICP备14008679号