2016-06-03 3 views
-1

문서 여기MongoDB를 인덱싱 여러 필드

_id: .. 
user_id (index): User1 
title: Test 
details (index): { gener: 'Fantasy', author: 'Author01', language: 'test', interest: 1 } 
filters (index): ['black', 'red', 'green', 'medium', .... (can contain more than 40 values)] 

내가 MongoDB의 컬렉션에서 3 개 필드를 인덱스로하여 MongoDB에서이 방법은 잘 작동

user_id (holds only string as a value) 
details (object of 4 key-value pairs) 
filters (array which holds more than 40 values) 

인덱싱을 시도하고있다? 그렇지 않다면 그러한 컬렉션을 색인화하는 더 좋은 방법은 무엇입니까?

+0

원하는 경우 – styvane

+1

인덱스, 쿼리에 의존 (https://docs.mongodb.com/manual/core/index-compound/) [MongoDB를이 복합 인덱스를 지원] 객체가있는 단일 필드 또는 다중 필드를 사용하여이 방법으로 쿼리하면됩니다. (user_id : 1, 'detail.gender': 1)을 사용하여 단일 필드 색인 (user_id : 1)을 만들거나 여러 개의 파일을 만들 때 배열의 레코드가 더 많을 때 배열 필드에서 색인을 사용하지 마십시오. https : // docs .mongodb.com/manual/indexes / – karthi

답변

0

$ 텍스트는 텍스트 색인으로 색인 된 필드의 내용에 대해 텍스트 검색을 수행합니다. 예 :

db.collection.createIndex({ "$**": "text" }) 

reference here