인덱스 후보로 ObjectID가 좋다. 몽고디비도 인덱스 설정 안하면 몹시 느려진다


인덱스 키는 ObjectID나 시간 등이 유저ID 보다 훨씬 더 좋다고 한다. 이유는 인덱스 키 자료구조가 B-Tree인데 ObjectID나 시간이 잘 사용하는 것끼리 잘 뭉쳐 있어서 좋다고. 


그리고 ObjectID를 샤딩 키로 설정하면 샤딩할 때도 골고루 잘 분배.

 


ObjectID를 사용한 쿼리 실행에 100ms 이상 걸린다면 위험한 상태라고 합니다. 



몽고디비 성능 튜닝 방법

1. 인덱스 사양을 잘 이해한다.

2. 쓰기 횟수를 줄인다.

3. DB를 용도별로 나눈다. 자주 사용하는 것은 최대한 메모리 사용, 덜 사용하거나 느려도 괜찮은 것은 HDD(SSD) 사용으로 나눈다.

4. 메모리를 증설한다. 샤딩 보다 메모리 증설로 성능을 올릴 수 있다면 메모리를 늘리는 것이 훨씬 좋다

5. 지속적으로 감시한다.







저작자 표시
신고
by 흥배 2014.09.03 08:00

티스토리 툴바