Elasticsearch 'size:' vs MongoDB batch_size



对于我的论文,我目前正在调查Elasticsearch和MongoDB的速度(降至毫秒(。

我注意到,与MongoDB相比,Elasticsearch在返回数据和所找到的总项目的速度方面非常一致。如果其他mongoDB需要更长的时间才能返回数据,则发现Elasticsearch的响应时间几乎总是相同的,无论发送的请求总数如何。

我的假设是,在Elasticsearch中,使用大小运算符时,在完成索引中的搜索后,实际查找和检索的文档数正好是大小运算符中设置的数量。在MongoDB中,情况并非如此,在MongoDB中,所有匹配索引中匹配的文档都将被检索,并且最终仅根据光标的batch_size返回客户端,并最终设置了最大限制((。<<<<<<<<<<<<<<<<<</p>

我没有其他办法,除了花几个小时查看源代码,找出这个假设是否正确,或者是否正在发生其他事情。

感谢您抽出宝贵的时间阅读此书,任何回复都会受到赞赏,并将帮助我进一步研究。

要使弹性搜索实际检索结果的清晰度更清晰:它使用查询然后获取。

因此,如果您搜索n结果,第一阶段将 QUERY 所有涉及的碎片,并返回其n结果的列表,其中包含分数和ID,而不是其他信息。在第二阶段,您 fetch 由其ID 最高的全局结果。因此,您将检索比所需的分数和ID的更多,但只能获取实际结果。

最新更新