MST

星途 面试题库

面试题:ElasticSearch 中影响近实时搜索结果排序的主要因素有哪些

在 ElasticSearch 近实时搜索场景下,阐述至少三个影响搜索结果排序的主要因素,并简要说明每个因素是如何对排序产生作用的。
23.6万 热度难度
数据库ElasticSearch

知识考点

AI 面试

面试题答案

一键面试
  1. 相关性得分(Relevance Score)
    • 作用方式:ElasticSearch 使用评分算法(如 TF - IDF 及其扩展 BM25 等)来计算文档与查询的相关性。词频(TF)越高,即查询词在文档中出现的次数越多,相关性得分越高;逆文档频率(IDF)越高,即查询词在整个索引中出现的文档数越少,相关性得分越高。例如,对于一个关于“人工智能”的查询,一篇频繁提到“人工智能”且“人工智能”这个词在整个索引中相对少见的文档,其相关性得分会比较高,从而在搜索结果中排序靠前。
  2. 文档字段权重(Field Weights)
    • 作用方式:可以为不同的字段设置不同的权重。当进行搜索时,权重高的字段中的匹配内容对文档相关性得分的提升作用更大。比如在一个新闻搜索场景中,标题字段可能被赋予较高权重,因为标题通常更能概括文章主旨。如果一篇新闻的标题包含查询词,相比仅在正文中包含查询词的新闻,它的相关性得分会因为标题字段的高权重而更高,进而在排序中更靠前。
  3. 文档热度(Popularity)
    • 作用方式:可以通过一些指标来衡量文档的热度,如文档的点击量、分享次数等。热度高的文档通常意味着它更受关注,可能与用户的需求更相关。例如,在商品搜索中,销量高(热度指标之一)的商品在搜索结果中可能会有更高的排序优先级,因为多数用户的选择在一定程度上反映了该商品的受欢迎程度和相关性。
  4. 排序字段值(Sorting Field Values)
    • 作用方式:可以根据文档中某个具体字段的值进行排序。比如时间字段,若按照时间降序排列,最新发布的文档会排在前面。在博客搜索中,按照发布时间排序,用户可以优先看到最新的文章。又如在电商搜索中,按照价格字段排序,可以让用户方便地找到价格最低或最高的商品。