我有3台Mongo DB(v 3.4.10)服务器(256 Gb RAM,1 Tb HDD,每台12个CPU)作为副本设置。服务器负载不错,硬盘驱动器吃得很快。我正在考虑分割大集合,但还没有。
与此同时,我面临的典型情况是:
中午我从master上的大集合(1M - 4M条目)中删除了大量冗余数据。我要么像这样更新集合:
更新({},{'$ unset':{'key_1':true,'key_2':true,'key_3':true}},{“multi”:1})
或创建新集合,仅插入所需数据并删除旧数据。
我不删除数据的日子 - 数据库执行正常。
我读了一些关于在复制服务器上删除数据的操作和细微差别。但是,在我的情况下,删除和性能下降之间的滞后是几个小时。
是否有任何内部Mongo进程,这是在大量更新/插入后几个小时发生的?我应该如何批量更新/插入以避免这种情况?