본문 바로가기
DataBase/NoSQL

[NoSQL] MongoDB Index 생성,예제,효율확인

by 스파이디웹 2021. 1. 19.
728x90

1. 50만개의 도큐먼트 생성

use testdb //testdb 데이터베이스

 

 > for (i =0; i<500000; i++){ db.testdb.insert({ "userid" : i, "name": "user"+i, "age": Math.floor(Math.random()*100), "score": Math.floor(Math.random()*100), "time": new Date() });}

testdb데이터베이스의 testdb 컬렉션에 50만개의 도큐먼트를 삽입(insert 와 save의 차이는 _id가 중복되는지 검사여부)

(약 5~10분 걸립니다 삽입되는데)

잘 삽입 되었다, 그리고 testdb컬렉션의 도큐먼트 숫자를 count()해보았더니 50만11개가 나왔는데 11개는 저 도큐먼트를 삽입하기전에 삽입해둔 도큐먼트라 무시해도된다.

 

#인덱스 생성전의 조회 속도

스코어가 23인 도큐먼트를 탐색하는데 298밀리 세컨드. 0.298초 걸렸다.

 

#인덱스 생성과 인덱스 생성 확인

createIndex({score: 1})을 통해 스코어 기준 오름차순정렬(1)로 인덱스를 생성하고 잘 만들어 졌는지 확인도 했다. //내림차순 정렬은 -1

 

#인덱스 생성 후의 조회 속도

확연히 빨라진 조회속도이다.

 

출처:

ryu-e.tistory.com/1

728x90

댓글