2012-07-12 2 views
3

하나의 mongo 컬렉션에서 많은 업데이트가 있었고 그 이후에 파일 시스템에서 거대한 조각화가 발생한다고 가정합니다. 귀중한 데이터 수집의 증가없이 파일 시스템에서 수집이 지속적으로 증가한다는 것이 가장 큰 우려 사항입니다.mongo 컬렉션의 데이터 조각화

내 관심사를 확인하거나 반박 해 주시겠습니까?

+0

수리를 시도하고 파일 크기를 측정 해 보셨습니까? –

+0

예, 가치있는 차이점을 얻지 못했습니다. 하지만 나를 위해 이론적 인 가능성이 더 흥미 롭습니다. – Raman

+0

이 링크를 읽는 것이 좋습니다. http://dba.stackexchange.com/questions/17174/mongo-collection-size-is-larger-than-storagesize/18249#18249. 그것은 당신의 이해를 도와야합니다. –

답변

5

어떤 업데이트를하는지에 따라 다릅니다. 이러한 업데이트로 문서가 늘어나거나 (배열 푸시 또는 유사), 그렇다면 조각화가 발생합니다. 현재 위치 업데이트 ($ inc)로 인해 문서가 이동하지 않습니다 (단편화되지 않음).

그건 그렇고, 그것은 조각 자체가 아니라 다소 낭비 된 공간입니다. 즉, 문서를 새 위치로 이동하면 이전 위치가 다시 사용되지 않습니다.

+0

나는 똑같은 문제에 직면 해있다. 시스템이 이전 데이터의 위치를 ​​재사용하게하는 방법이 없습니까? 나는 비록 db를 오프라인으로 가져갈 수 없다. 기본적으로 복구 명령과 비슷하지만 문서 및 온라인 문서로 이루어집니다. –

+0

복제 세트를 사용할 수 있습니다. 슬레이브를 오프라인으로 전환하고, 조각을 모으고, 온라인 상태로 되돌리고, 동기화를 기다리고, 새로운 마스터로 만들고 반복합니다. –

+0

감사합니다. 아마 10gen이 자동 조각 모음을 구현할 때까지 (아마도 NTFS와 같은) 지금은 아마도 최선의 접근법 일 것입니다. –