这期内容当中小编将会给大家带来有关怎样深入理解batched_reduce_size,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在search 流程中,协调节点收到客户端的查询请求后,将请求涉及到的转发到其他数据节点,这个过程中会以 shard 为单位发送 query请求,待所有的请求都收到响应(QuerySearchResult)后进行下一步处理。batched_reduce_size 参数用于控制在Search过程中,当协调节点收到指定的结果时执行一次 reduce。官网对他的解释如下:(Optional, integer) The number of shard results that should be reduced at once on the coordinating node. This value should be used as a protection mechanism to reduce the memory overhead per search request if the potential number of shards in the request can be large. Defaults to 512.这个解释看上去难以理解本质,因此查阅一下代码,重新解释一下这个参数的含义:协调节点并行发送完 query 请求后,收到的响应QuerySearchResult达到batched_reduce_size数量时,执行一次 reduce,reduce 执行以下操作:如果请求中含有聚合,则对这批结果执行聚合如果请求中需要计算 TopN,则对这批结果执行计算因此这个参数的主要作用是防止协调节点为了汇总全部结果而占用太 香港云主机多内存。主要实现代码如下,bufferSize就是batched_reduce_size设置的值,默认为512上述就是小编为大家分享的怎样深入理解batched_reduce_size了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注开发云行业资讯频道。
相关推荐: Integer中怎么利用remove方法删除元素
这期内容当中小编将会给大家带来有关Integer中怎么利用remove方法删除元素,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。调用类型是 Integer 的 ArrayList 的 remove 方法删除元素,传入一个 I…
免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。