[MongoDB] 인덱스

-- MongoDB 2013. 1. 5. 11:10
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
 

1. 인덱스생성

 

쿼리에대한인덱스를생성하기전에이미생성된인덱스를아래와같이조회하여어떤인덱스를생성할것인지판단한다.

 

> db.person.getIndexes()

 

쿼리에대한속도를향상하기위해인덱스를생성할아래와같이한다.

 

> db.person.ensureIndex({ "name" : 1 }) // 1 : 오름차순, -1 : 내림차순

 

UNIQUE 인덱스

 

> db.person.ensureIndex({ "emp_no" : 1 }, {background : true, unique : true, dropDups : true })

 

background : 인덱스생성백그라운드작업으로실행

unique : 인덱스를고유한고유인덱스로생성

dropDups : 기존문서를고유인덱스로만들, 중복값이있다면삭제해고유인덱스생성

 

3. 인덱스삭제

 

이미생성된인덱스필요하지않아삭제할경우에는다음과같이한다.

 

> db.person.dropIndex({"name" : 1 })

{ "nIndexesWas" : 3, "ok" : 1 }

 

모든인덱스삭제

 

> db.person.dropIndexes()

{

"nIndexesWas" : 4,

"msg" : "non-_id indexes dropped for collection",

"ok" : 1

}

 

4. 인덱스힌트사용

 

쿼리에특정인덱스를사용하도록 hint사용한다.

 

> db.person.find({ name : "neo" }).hint({ "name" : -1 })

'-- MongoDB' 카테고리의 다른 글

[MongoDB] 집계  (0) 2013.01.07
[MongoDB] 초보자를 위한 보안 관련 Tips  (0) 2013.01.07
[MongoDB] $where 쿼리  (0) 2013.01.02
[MongoDB] 문서에 배열 사용하기  (0) 2013.01.02
[MongoDB] 조건연산  (0) 2013.01.02
posted by 어린왕자악꿍