删除大数据后MongoDB速度很慢
问题描述:
我们有172GB(30M记录),72GB(60M记录)的大集合。我们已经从每个集合中删除了14M条记录,现在数据库插入/更新/选择的速度很慢。我们可以像其他关系数据库一样重新组织吗?如果是,如何。删除大数据后MongoDB速度很慢
答
尝试compact集合。如果它是在现场制作,你会想在辅助上做到这一点。在二级压缩完成之后,让它赶上初级,然后让初级降级和压缩级二级变为新的初级。
但是,请确保您有足够的空间进行压实。 Compact需要至少1:1的可用空间比率。就你而言,你需要172GB的可用空间来完成第一个集合。
另一种选择是将数据与mongodump或snapshot出口的话,dropDatabase腾出从倾倒BSON文件空间,然后mongorestore或恢复快照。
我个人推荐mongodump-> mongorestore选项,因为它会重建数据库并给它一个干净的开始。补充阅读here
感谢您的意见。我不能使用mongodump,因为这个数据大小需要2-3天。我会尝试紧凑。你知道172GB的数据需要多长时间吗? – user3895930 2014-11-21 22:03:26
远不止倾倒和恢复。而且,由于您是先做第二次,它不应该影响您的应用程序。下台将使数据库在选举中不可用,时间不应超过2秒。考虑切换到SSD。 – 2014-11-22 08:23:27