在 Mapping 里面,将 dynamic 参数设置成 strict 可以拒绝索引包含未知字段的文档。 此条 Tips 由 medcl 贡献。

es查询优化问题

Elasticsearch | 作者 dongmei | 发布于2018年05月29日 | 阅读数:2834


屏幕快照_2018-05-29_17.22_.57_.png

如上图,大概流程是通过scroll进行查询,查询结果获取id写进set中,数据量比较大,几百万到上千万;但是结果很慢,之后发现瓶颈在查询的过程,因此开始想利用多线程进行查询,但发现获取scrollID每次都需要上一次的结果才能生成下次的,所以没办法进行多线程。就不知道如何优化了,请教各位。。。
已邀请:

bill

赞同来自:

1. 通过source限制返回的列
你如果只想得到满足条件的document id,不需要文档的所有列,那么可以限制一下,这样减少ES查询处理中使用的内存。

2. 根据你的查询条件做具体优化。

dongmei

赞同来自:

可以,这个确实是一个点,昨天搞定了,去除了排序,和只查询id,加上运用slice的方式进行多线程查询,提高了很多。。。

要回复问题请先登录注册