不为失败找理由,要为成功找方法。

请教一个排序的问题

Elasticsearch | 作者 rndlife | 发布于2016年11月28日 | 阅读数:2961

ES索引存放的是文章,文章有个作者Id属性,搜索到的文章结果想限制同一作者出现的文章结果数目(例如每个作者限制一条或者两条),请问如何实现?
 
或者搜索结果排序时将同一作者的文章结果尽量分散开。
 
请指教,十分感谢!
已邀请:

jerryhouse - 搜索工程师,技术网站:www.dcharm.com

赞同来自: rndlife

我们使用es时一般使用的是TopScoreDocCollector,得分最高的文章排在前面,你可以自定义自己的collector,当碰到同一作者出现的文章结果数目超过限制时,如果当前文章的分数大于队列中该作者文章的分数,则替换掉队列中该作者的文章,否则忽略这篇文章。

要回复问题请先登录注册