今天后台分页查询ElasticSearch,出现了重复数据。大致问题就是ES查询了多个节点中的分片。所以只要设置指定查询节点就行。

使用_only_nodes:123456

查看节点信息:_nodes/stats

_only_local

仅在本地节点上的分片上运行搜索。

_local

如果可能,请在本地节点上的分片上运行搜索。如果没有,请使用默认方法选择分片。

_only_nodes:<node-id>,<node-id>

仅对指定的节点 ID 运行搜索。如果在多个选定节点上存在合适的分片,请使用默认方法在这些节点上使用分片。如果没有指定节点可用,则使用默认方法从任何可用节点中选择分片。

_prefer_nodes:<node-id>,<node-id>

如果可能,请对指定的节点 ID 运行搜索。如果没有,请使用默认方法选择分片。

_shards:<shard>,<shard>

仅在指定的分片上运行搜索。此值可以与其他preference值组合,但此值必须在前。例如: _shards:2,3|_local

<自定义字符串>

任何不以_. 如果集群状态和选定的分片没有改变,则使用相同<custom-string>值的搜索将按相同的顺序路由到相同的分片。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐