无论才能、知识多么卓著,如果缺乏热情,则无异纸上画饼充饥,无补于事。

ES查询时,节点之间的数据流向的疑问

Elasticsearch | 作者 wangxinrong | 发布于2020年02月21日 | 阅读数:2022

ES集群配置为 3个master节点+6个data节点,这3台master节点挂在负载均衡后面,充当client节点接收读写请求。

最近几天发现这3台 master(client) 节点带宽很高,我看了下日志,一旦出现以下查询时,就会有带宽高的情况

{"query": {"bool": {"must": [{"terms": {"xxx_guid": ["x", "xx", "xxx", "xxxx", 等几百个值]}}, {"term": {"xxx_field": 1}}, {"range": {"start_time": {"gt": "2020-02-21 00:00:00"}}}], "must_not": []}}}

看监控是这样的
master节点 进流量:30Mbps 出流量:1.2Gbps
data节点 进流量:600Mbps 出流量:30Mbps
在 master(client) 节点上抓包发现出流量大是 master节点在向data节点传数据

这里有个疑问,一般不应该是 用户->master(client)->data 发送查询请求数据比较小,data->master(client)->用户 返回数据这段数据有可能比较大么,为什么会有master(client)向data发送大量数据的情况呢。从我的监控上看master进带宽不高,并不存在大量的写入。
已邀请:

byx313 - BLOG:https://www.jianshu.com/u/43fd06f9589c

赞同来自:

建议不要连master,轮训访问data节点会合更好。

要回复问题请先登录注册