원문 : http://www.colinhowe.co.uk/2012/apr/26/mongodb-strategies-when-hitting-disk/
완전 초 간단 요약.
1. 여러개의 작은 document가 아니라 하나의 큰 document로 스키마를 짠다. 디스크의 random seek 을 몇번 하느냐의 차이가 발생.
2. 다른 방식의 인덱스 전략. 새로 쌓이는 데이터가 한곳에 모이도록 만들어야 함. 그래야 rebalancing을 줄일 수 있음.
3. pre-allocation. document의 확실히 정의된 부분들은 최초 insert시에 미리 0으로 값을 할당해둔다. 추후 업데이트시 디스크 공간을 다시 할당하는 오버헤드와 그로 인해 한 document의 데이터가 여기저기 흝어져서 random seek이 일어날 확률을 줄일 수 있다.
역시 RDBMS와는 약간 다른 방식의 사고로 접근하는 것이 필요하다.
'DataBase' 카테고리의 다른 글
[MongoDB] log rotate (0) | 2012.08.30 |
---|---|
[MongoDB] 배열의 수를 기준으로 질의 (advanced query - $size) (0) | 2012.06.27 |
NoSQL의 스키마 구성원칙 (0) | 2012.04.25 |
[MongoDB] 복합인덱스 질의 (multi index query) (0) | 2012.04.25 |
[MongoDB] reIndex (2) | 2012.04.25 |