2016-10-29 7 views
0

두 필드 모두에 인덱스를 만들려고합니다. ab하지만 b 필드 만 고유해야합니다. 어떻게 복합 인덱스를 사용하여이를 수행 할 수 있는지 잘 모르겠습니다. 여기에 도움이 것은 내가 복합 인덱스에 내 원하는 작업을 수행 할 수 있습니다mongodb에서 java/scala를 사용하여 복합 인덱스를 사용하는 방법

+0

복합 인덱스는 필드가 아닌 고유 한 것으로 설정할 수 있다고 생각합니다. – Veeram

답변

0

내가 보는 방법을 도와주세요 어떻게 코드

var index=collectionMongo("test").createIndex(new BasicDBObject("a", 1)) 

var index1=collectionMongo("test").createIndex(new BasicDBObject("b", 1),new BasicDBObject("unique", true)) 

, 당신은 이미 복합 인덱스를 처리해야 바로 index intersection 이후를하고있는 너를 위해서. a에 대한 색인과 b에 대한 고유 색인을 작성했으며 mongo는 두 필드를 모두 허용하는 조회를 수행 할 때 두 색인을 모두 사용합니다.

인덱스가 제대로은 (단일 및 복합) 인덱스 많은 분야에 필요한 경우이 같은 필요한 디스크 공간을 감소시키기 때문에 복합 인덱스에 유리한 될 수있다 db.find({"query involving a and b here"}).explain("executionStats")

교차로 인덱스를 실행하여 사용하는 경우 당신은 체크 아웃 할 수

전체.