本文共 519 字,大约阅读时间需要 1 分钟。
MongoDB应用运营数据分析与自动化支持平台每分钟处理插入30万到40万条记录,更新20万到30万条记录。数据仅保留一天,超过一天的数据可立即清理。由于每日数据量大约达到1亿级别,传统的清理方式往往导致入库操作变慢,影响系统性能。经过与开发团队的多次讨论和尝试,我们最终找到了一种适合当前业务需求的清理方案,使系统运行更加稳定。
在帮助其他数据库管理员解决MongoDB数据清理问题的过程中,也积累了一些常见的清理方法,以下是一些实用的建议:
数据清理方案
对于数据量较小的集合,这种简单的定期删除方法效果不错。具体操作方法如下:
删除操作:
db.collection.remove({ "ns" : "fla.logGset", "query" : { "time" : { "$lt" : 1495693140, "$gte" : 1495693080 } }})
然而,这种方法在处理数据量较大的库时存在性能瓶颈。例如,涉及到大规模数据清理的mrcache库,每次执行删除操作可能需要10分钟到20分钟的时间,这明显无法满足实时数据处理的需求。因此,我们需要结合多种优化措施来解决这个问题。
转载地址:http://usffk.baihongyu.com/