悟空,拿我的打狗棒来

es scroll查询全部数据问题

匿名 | 发布于2018年10月11日 | 阅读数:13708

es-6.1.2
先需要快速的查询出索引全部数据,所以采用scroll方式查询,发现每次返回scoll-id都是相同的。
所以为了更近一步,采用多线程,一个线程用scroll-id查询后,下个线程等待1s再次用该scroll-id去查询,如此反复...
 
先出现下面的问题:
1.大部分线程能够完成查询,但有几个线程查询不出来数据。
 
能给点意见吗?
已邀请:

kennywu76 - Wood

赞同来自: liujia lzc dawn1ng laoyang360 caizhongao davidyan更多 »

scroll id不一定总是相同的,可能在查询之间会变动。 应该每次scroll调用,就是用上次scoll查询返回的id。

Screen_Shot_2018-10-11_at_15.48_.37_.png

 
如果想并发执行,可以使用sliced scroll, 但是需要主要控制slice的大小,以免并发量过大,消耗过多内存影响集群性能和稳定性。
参考: https://www.elastic.co/guide/e ... .html
 
 
 

yayg2008

赞同来自: lzc

scroll id 可能一样,但也可能变化,不要写死。

zqc0512 - andy zhou

赞同来自:

TASK 卡住了?
你看看cat task

要回复问题请先登录注册