相关性
属性排序顺序
本文解释了 searchableAttributes
数组中属性的顺序如何影响搜索结果的相关性。
在大多数数据集中,有些字段比其他字段更与搜索相关。例如,对于电影搜索而言,title
(标题)可能比其 overview
(概述)或 release_date
(发布日期)更具意义。
当 searchableAttributes
使用其默认值 [*]
时,所有字段都具有相同的权重。
如果您手动配置可搜索属性列表,则数组中靠前的属性在计算搜索结果相关性时更为重要。
示例
根据上述属性排序顺序,在 title
字段中找到的匹配词对相关性的影响将高于在 overview
或 release_date
中找到的相同词。例如,如果您搜索“1984”,像迈克尔·雷德福的电影《1984》这样的结果将比在 1984 年发行的电影排名更高。
属性排序顺序和嵌套对象
默认情况下,嵌套字段与其父属性共享相同的权重。使用点表示法为嵌套对象中的属性设置不同的权重
根据上述排序顺序,在计算文档的排名分数时,review.critic
比其同级 review.user
更重要。
attribute
规则在 rankingRules
中的位置决定了结果的排序方式。这意味着,如果 attribute
在排名规则列表的底部,它将几乎不会对您的搜索结果产生影响。