2012-02-04 5 views
0

뭔가 알고 싶습니다 : 우리가 이해할 수 있다면 slaveOkay()가 활성화되어있는 복제 세트 환경에서 $ 요청을 할 때 정확하게 기본적으로 다른 슬레이브에서 쿼리를 분할 함), mongo는 기본적으로 슬레이브 사이의 $ 배열을 분할합니까? 미리 감사드립니다!

답변

3

아니요. 효율적으로 슬레이브 사이의 $ 배열을 분할하려면 쿼리를 보내기 전에 분할해야합니다 (클라이언트/드라이버는 쿼리를 여러 쿼리로 효과적으로 변경해야 함). 전체 결과를 위해 다시 병합합니다.

slaveOk를 사용하면 전체 쿼리를 하나의 구성원에게 라우팅하며 첫 번째 선택 항목은 보조/비 기본 항목이됩니다.

여러 서버에서 (잠재적으로)이를 중단하려면 $ in 배열을 작은 청크로 그룹화하고 여러 개의 동시 쿼리를 수행 할 수 있습니다.

+0

감사합니다. 이것은 내가 생각했던 것입니다. – spacenick

+0

도움을 주시면 답변을 수락하겠습니다. – btoconnor

관련 문제