`
m635674608
  • 浏览: 5042190 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

分布式搜索elasticsearch 搜索结果排序不一致性问题

 
阅读更多

想象这一种情况,如果搜索结果中得分出现相同的情况下:由于搜索会在分片的副本之间均衡的轮询请求,可能会出现请求在不同的副本之间返回的循序不同,从而影响排序结果的稳定性。

搜索接口有提供preference参数:curl localhost:9200/_search?preference=xyzabc123。

可以使用的参数: _primary,_primary_first,_local,_only_node:xyz,_prefer_node:xyz以及_shards:2,3这样的值。

参数的意义分别如下:

 _primary:搜索只在主分片执行搜索请求,副本不参与搜索;性能会打折扣,达不到性能的水平扩展。

_primary_first:优先在主分片执行,如果主分片挂掉,会在副本执行请求。

_local:搜索请求优先于在本地执行。

_only_node:xyz:只在xyz节点执行搜索。

_prefer_node:xyz:搜索请求优先在节点xyz执行。

_shards:2,3:搜索只在分片2、3执行,可以与_primary参数一起使用如:_shards:2,3;_primary

随机字符串:指定一个随机字符串,可以保证同样的请求,被分配到同样的副本上面,从而保证同一请求结果的稳定性。

参考:http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-preference.html

http://blog.csdn.net/gdutliuyun827/article/details/43445779

分享到:
评论

相关推荐

    分布式搜索引擎很好的资源

    常见的分布式搜索引擎有Elasticsearch、Solr、Hadoop的Nutch和Tika等。这些系统提供了丰富的API和插件,方便开发者集成和定制化。 总之,分布式搜索引擎是现代大数据时代的关键技术之一,它通过分布式架构实现了对...

    ElasticSearch+Spark 构建高相关性搜索服务,千人千面推荐系统

    在构建高相关性搜索服务时,Elasticsearch的角色是快速、高效地处理海量数据的检索请求,并通过丰富的查询语法和评分机制,实现精确的搜索结果排序。 **Spark:大数据处理框架** Apache Spark是一个通用的大数据...

    15_分布式搜索引擎写入和查询的工作流程是什么样的?.zip

    以Elasticsearch(ES)为例,它是一个流行的开源全文搜索引擎,以其高效、可扩展和易于使用的特性深受开发者喜爱。本篇将详细介绍分布式搜索引擎,特别是Elasticsearch的写入和查询工作流程,以及与Java高并发API的...

    18_总结一下分布式搜索引擎相关问题的面试技巧.zip

    6. **Lucene和Elasticsearch**:Lucene是Java的全文搜索引擎库,而Elasticsearch是基于Lucene构建的分布式、实时的搜索和分析引擎。对这两者的了解,包括它们的特性、配置和性能优化,是面试中必不可少的知识点。 7...

    13_体验一下面试官对于分布式搜索引擎的4个连环炮.zip

    面试中可能会讨论如何设计一个高可用和可扩展的分布式系统,以及如何处理节点间的通信和数据一致性问题。 2. **倒排索引**:这是搜索引擎的基础,通过构建倒排索引,搜索引擎可以快速定位到包含特定关键词的文档。...

    ElasticSearch权威指南

    ElasticSearch权威指南是一本深入介绍ElasticSearch分布式搜索引擎的权威书籍,它向读者介绍了ElasticSearch的基础知识和使用方法。ElasticSearch是一个开源搜索引擎,它基于Apache Lucene构建,提供了全文搜索功能...

    Elasticsearch测试数据.rar

    4. **高可用性**:通过模拟节点故障,检查Elasticsearch的恢复能力和数据一致性。 5. **伸缩性**:如果需要,可以增加更多的节点,看看系统如何自动平衡负载并分发数据,以验证其横向扩展的能力。 6. **搜索相关性...

    官网原版 elasticsearch-5.2.1.zip

    9. 相关性评分:Elasticsearch 的搜索结果不仅返回匹配的文档,还依据相关性对它们进行排序。相关性评分基于多种因素,如关键词频率、位置和文档长度等。 10. 插件支持:Elasticsearch 社区和官方提供了许多插件,...

    elasticsearch-head-master

    在使用Elasticsearch-Head时,你可能会遇到一些常见问题,比如连接问题、权限错误、版本兼容性等。确保Elasticsearch-Head和Elasticsearch版本匹配,且防火墙设置允许它们之间的通信。如果遇到安全问题,可能需要在...

    项目课程系列之Elasticsearch

    另外,Elasticsearch 定期将内存中的数据刷新到磁盘,形成新的 segment,以保持数据一致性。 **七、高级特性** Elasticsearch 提供了丰富的功能,包括地理搜索、脚本字段、自定义分析器、聚合分析、机器学习等。...

    Elasticsearch总结.doc

    Elasticsearch不仅是一个搜索引擎,它也是一个分布式、实时的文档存储系统,支持对结构化和非结构化数据进行搜索和分析。它具有以下特性: 1. **分布式**:通过横向扩展,能够轻松应对大规模数据和高并发场景。 2. ...

    Elasticsearch优点和缺点以及要点和难点具体应用.zip

    总结来说,Elasticsearch作为一款强大的搜索引擎,其优势在于分布式架构、实时性、易扩展性,但在使用过程中需要注意资源管理、数据一致性和学习成本等问题。正确理解和运用这些关键点和难点,将能充分发挥Elastic...

    elasticsearch-8.6.1.7z

    10. 搜索优化:Elasticsearch提供了多种搜索优化策略,如过滤、排序、评分等,可以根据业务需求定制搜索结果。 在8.6.1版本中,可能包含了性能提升、新特性的引入、已知问题的修复等改进。用户可以通过解压"elastic...

    Springboot1.3.1+elasticsearch1.7.3集群

    此外,Elasticsearch还支持聚合分析,用于统计、排序和过滤结果。 6. **部署文档**:为了搭建SpringBoot+Elasticsearch集群,需要遵循一定的部署步骤。这通常包括安装JDK,下载并解压Elasticsearch,配置集群节点,...

    Elasticsearch服务器开发(中英版)

    另外,Elasticsearch还支持评分(Relevancy Scoring),用于根据相关性排序结果。 **六、聚合分析** 除了搜索,Elasticsearch还具备强大的聚合(Aggregation)能力,可用于数据统计、分析和可视化。例如,可以进行平均...

Global site tag (gtag.js) - Google Analytics