3

当我通过 findOne / find 在 Mongodb 中使用相同的查询词进行搜索时,findOne 比 find 快得多。

在我的搜索案例中,我只需要知道它是否存在,所以我希望搜索引擎选择一个并返回,然后快速运行我的搜索查询。

当我在 ElasticSearch 中搜索任何内容时,我总能得到搜索结果的总数,它不是很慢,但没有我预期的那么快。

仅供参考,我的 elasticsearch 存储大约 200 万个文档,一些搜索词提示超过 20 万个文档,这可能需要 500 多毫秒。

我正在寻找像 Mongodb 的 findOne 这样的函数,它可以将我的查询时间减慢到不到 100 毫秒。

或者还有其他解决方案吗?

谢谢。

4

1 回答 1

0

尝试任一计数 api:

http://www.elasticsearch.org/guide/reference/api/count.html

或 search_type=count:

http://www.elasticsearch.org/guide/reference/api/search/search-type.html

如果您不需要任何命中数据,则两者都应该更有效,尽管它们仍会计算总文档数。

于 2012-12-01T22:54:08.167 回答