저는 820 만 개가 넘는 문서를 보유하고 있습니다. 나는 쿼리에 의해 2 ~ 3 백만 가지를 제거해야합니다 (속성 또는 두 속성이 색인 됨).쿼리로 수백만 개의 문서를 삭제할 때 ReplicaSet에 미치는 영향은 무엇입니까?
내 관심사는 oplog가 내가 가질 수있는 것보다 큰 성장을 한 다음 백업에서 모든 것을 다시 시드해야 할 필요가있어 제 2 차를 뒤지게 만드는 것입니다.
이 싶습니다 뭔가 ...
db.my_collection.remove({attribute_1:'xyz'},false);
또는
db.my_collection.remove({attribute_1:'xyz',attribute_2:'abc'},false);
은 (실제로 문서를 제거 외에) 내 세컨더리에 부정적인 영향이 없을 것 하나 oplog 항목을 수? 아니면 복제를 위해 2-3 백만 건의 작업으로 변환됩니까?
대답은 그것이 하나의 작업이 될 것이라고 생각하고 복구해야 할 수도있는 조각화가 있지만 반드시 oplog/secondary sync 문제 일 필요는 없습니다.
, 뭔가 당신이 구문을 분석하는 것보다 알고 있습니다 더있다 db.printReplicationInfo() 또는 db.printSlaveReplicationInfo()의 출력? –
스크립팅하는 경우 기본 replSetGetStatus 명령을 사용합니다. – jeffl