数据删除后几小时MongoDB性能不佳

时间:2018-03-26 09:11:06

标签: mongodb

我有3台Mongo DB(v 3.4.10)服务器(256 Gb RAM,1 Tb HDD,每台12个CPU)作为副本设置。服务器负载不错,硬盘驱动器吃得很快。我正在考虑分割大集合,但还没有。

与此同时,我面临的典型情况是:

  1. 早上我看到数据库硬盘使用率为92%的警告
  2. 中午我从master上的大集合(1M - 4M条目)中删除了大量冗余数据。我要么像这样更新集合:

    更新({},{'$ unset':{'key_1':true,'key_2':true,'key_3':true}},{“multi”:1})

  3. 或创建新集合,仅插入所需数据并删除旧数据。

    1. 晚上(删除后大约4-5小时,通常是负载峰值)Mongo响应时间从3-4ms急剧增加到500ms。这段时间持续一段时间,在此期间我的申请几乎失败。只有在我完全停止我的应用程序10-20分钟并尝试重新启动它之后,它才能恢复正常性能。
    2. 我不删除数据的日子 - 数据库执行正常。

      我读了一些关于在复制服务器上删除数据的操作和细微差别。但是,在我的情况下,删除和性能下降之间的滞后是几个小时。

      是否有任何内部Mongo进程,这是在大量更新/插入后几个小时发生的?我应该如何批量更新/插入以避免这种情况?

0 个答案:

没有答案