Latest web development tutorials

MongoDB의 인덱스

인덱스는 판독 데이터 컬렉션의 각 파일을 검색 쿼리 조건에 일치하는 레코드를 선택해야 인덱스, MongoDB를가없는 경우 크게 쿼리의 효율을 개선하는 것이 가능하다.

이 스캔 전체 쿼리 모음 효율은,이 사이트의 성능이 매우 치명적입니다 많은 양의 데이터를 처리 할 때 특히, 쿼리는 초 또는 분 수십 걸릴 수 있습니다, 매우 낮다.

인덱스가 인덱스 쉬운 읽기 순회의 데이터 세트에 저장되고, 특별한 데이터 구조이며, 상기 인덱스 값은 정렬 데이터베이스 테이블 또는 컬럼 구조


ensureIndex () 메소드

MongoDB를 인덱스를 만들 ensureIndex () 메소드를 사용합니다.

문법

다음과 같이 ensureIndex () 메소드 기본 구문은 다음과 같습니다

>db.COLLECTION_NAME.ensureIndex({KEY:1})

문법 키 인덱스 필드 값은 당신이 -1 지정할 수 있습니다 인덱스를 만들려면 내림차순, 지정된 만들 상승에 대한 인덱스를 만들려고합니다.

>db.col.ensureIndex({"title":1})
>

ensureIndex () 메소드는, 당신은 또한 인덱스 (관계형 데이터베이스가 종합 지수라고도 함) 만드는 여러 필드를 사용하도록 설정할 수 있습니다.

>db.col.ensureIndex({"title":1,"description":-1})
>

ensureIndex () 선택적 매개 변수를 수신하고, 선택적 매개 변수는 다음과 같습니다 :

매개 변수 유형 기술
배경 부울 인덱싱 프로세스는 인덱스 배경을 지정할 수 있습니다 나중에 시스템, "배경"선택적 매개 변수의 증가를 만들고, 다른 데이터베이스 작업을 차단합니다. "배경"기본값은false입니다.
유일한 부울 인덱싱은 고유합니다. true로 고유 인덱스를 생성하도록 지정합니다. 기본값은false입니다.
이름 인덱스의 이름입니다. 인덱스 필드 이름 및 인덱스 이름을 생성하는 정렬 순서를 연결하여 MongoDB를 지정하지 않으면.
dropDups 부울 당신은 고유 인덱스를 만들 때 중복 레코드를 삭제, 고유 인덱스를 만들 true를 지정. 기본값은false입니다.
부족한 부울 필드 데이터가 인덱스를 사용하지 않는 문서에 존재하지 않습니다를 들어, true로 설정된 경우이 매개 변수는 특별한주의를 필요로하고 인덱스 필드는 해당 필드를 포함하지 않는 문서를 쿼리하지 않습니다 .. 기본값은false입니다.
expireAfterSeconds 정수 의 TTL 설정을 완료 단위 (초)의 값을 지정 컬렉션의 생존 시간을 설정합니다.
V 인덱스 버전 인덱스 버전 번호입니다. 인덱스의 기본 버전은 인덱스 버전을 만들 mongod 실행에 따라 달라집니다.
무게 문서 색인 가중치 1, 99,999 사이의 값이 인덱스의 중량에 대하여 다른 인덱스 필드 점 오른쪽을 나타낸다.
DEFAULT_LANGUAGE 텍스트 인덱스의 경우,이 매개 변수는 중지 단어와 규칙과 단어 목록을 형태소를 결정한다. 기본값은 영어입니다
language_override 문서에 포함 된 필드 이름, 언어가 디폴트 언어를 대체 텍스트를 지정하는 인덱스를 들어, 디폴트 값은 언어이다.

백그라운드에서 인덱스를 만듭니다

db.values.ensureIndex({open: 1, close: 1}, {background: true})

사실 옵션 백그라운드 작업을 생성 할 수 : 인덱스 생성시 배경을 첨가하여