在不使用外部引擎的情况下,如何使用 mongodb 实现细粒度搜索?以这个对象为例 { 类型:'comedy',页数:380,年份:2013,畅销书:true,作者:'John Doe' }
正在通过以下方式搜索:
db.books.find({
pages: { '>': 100 },
year: { '>': 2000 },
bestseller: true,
author: "John Doe"
});
到目前为止非常简单。现在假设文档中有更多的值,并且我正在进行更精确的搜索并且我有一个相当大的集合。
我要做的第一件事是创建索引。但是,它是如何工作的?我已经读过这里定义的索引交集https://jira.mongodb.org/browse/SERVER-3071是不可行的。这意味着如果我将索引设置为“年份”和“页面”,我将不会真正优化搜索中的 AND 操作。
那么如何针对具有许多参数的搜索进行优化呢?
提前致谢。