2013-06-13 2 views
-2

Мы используем MongoDB для нашего приложения. Я вижу, что индексы уже присутствуют для коллекций.MongoDB: изменить существующий индекс в коллекции

У нас было новое требование, для которого я вижу, что ответ очень медленный от MongoDB для некоторых из них.

Я хочу добавить дополнительное поле к существующему индексу, не отбрасывая существующий индекс.

Пожалуйста, сообщите мне, возможно ли это или нет.

Будет ли это иметь какое-либо влияние на приложение?

ответ

0

Я уверен, что вы не можете изменять индексы после их создания.

Вы можете легко создать новый индекс, который будет охватывать новое поле.

Добавление индексов очень легко из оболочки вы можете ввести

db.yourcollection.ensureIndex({ field1: 1, field2: -1 }) 

Монго будет смотреть на индексах и работать, какой из них лучше всего использовать для вашего запроса. Вы можете увидеть это, добавив пояснение в конец вашего запроса в оболочке, это скажет вам, использовал ли он индекс и какой индекс был использован.

Это также будет хорошим инструментом для разработки медленного запроса.

Дополнительную информацию см. В документации Mongo. http://docs.mongodb.org/manual/core/indexes/

Смежные вопросы