Конечная точка API _find
, которая поддерживает метод .find()
, будет использовать индекс автоматически, , если может .Иногда это невозможно - обычно потому, что фактический запрос не соответствует индексу.Чтобы лучше понять этот механизм, стоит ознакомиться с документацией для Cloudant Query .
Можно указать фактический индекс для запроса для использования через параметр use_index
- но я не проверял, реализовано ли это в клиенте node.js, но в большинстве случаев это не должноВ этом нет необходимости.
Существует еще одна полезная конечная точка API, которая называется _explain , которая покажет вам найденные индексы или, если запрос откатится на полное сканирование БД (которого вы хотите избежать!).
Обратите внимание, что когда вы используете _find
(.find()
), вы на самом деле используете нечто, называемое Cloudant Query, а не Cloudant Search.Это различие важно, поскольку Cloudant Search - это другой механизм запросов, который предлагается.