在MongoDB分片上的集合上运行新的2.0+压缩命令时,文档说明在压缩程序运行时命令被阻止。我的问题是,究竟是什么阻止了?仅针对该分片上的该集合的命令?群集中该集合的所有命令?所有操作,无论该碎片上的集合如何?
等等等......
有人知道吗?
我认为这只是针对该碎片上的集合的命令,因为在一个碎片上压缩一个集合理论上应该独立于其他碎片,因此需要进行分片。
谢谢, 贾斯汀
答案 0 :(得分:1)
通常,您在辅助节点上运行压缩,因为压缩是按节点进行的,而不是群集中的每个集合。运行时,节点处于恢复状态。因此,它无法处理任何读取或写入。你可以在rs.status()中看到它。完成中学后,您将进入下一个中学。如果你已经完成了所有辅助功能,那么你就可以放下你的主人(导致其中一个新压缩的辅助设备接管为主人)&然后在现在的辅助(前一个主)上运行压缩。
我甚至不确定你是否可以通过mongos进行压缩,因为它只能在mongod上运行。