elasticsearch 批量检索问题

2018-11-30 15:28:42 +08:00
 Mrkon
如题:
1.通过 id 查找可以使用 mget
2.通过数据批量查找可以使用 msearch,但是效率较低

目前需要通过数据批量查找,有没有什么更好的方式,求解答。
2433 次点击
所在节点    Python
8 条回复
DawN1ng
2018-11-30 16:05:05 +08:00
bulk 啊
Mrkon
2018-11-30 16:16:17 +08:00
@DawN1ng bulk 涉及查询了吗?如何使用呢?我没有找到啊
lyc1116
2018-11-30 17:45:05 +08:00
少量用 fq, 另外排序不要带 score。
量大可以写个插件在 querypaser 里拼 termsquery 再包一层 filterquery。
量再大就要用黑科技了。
Mrkon
2018-12-01 11:45:32 +08:00
@lyc1116 感谢大神,能多指点一下吗?检索目前因为需要对 score 排序,还得聚合与高亮,效率极低。
Mrkon
2018-12-01 11:47:23 +08:00
@lyc1116 我很多查询都是 fq,都可以改成写插件的方式吗?
Nick2VIPUser
2018-12-01 12:00:51 +08:00
ES 每隔一段时间查询总是很慢,有遇到过的大佬吗?
Mrkon
2018-12-01 12:07:14 +08:00
@Nick2VIPUser 如果是重复查询的话,有可能是缓存问题
lyc1116
2018-12-02 11:52:46 +08:00
@Mrkon 索引不怎么变的话可以考虑在 ES 前加 HTTP 缓存,facet 字段最好启用 docvalues

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/513101

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX