【发布时间】:2016-03-16 11:19:35
【问题描述】:
我目前正在通过自定义ComputedField 在Tracking 字段中对应用于项目的Profile Cards 进行索引。这很好用,我可以根据它匹配我正在搜索的个人资料卡来检索结果。
但是我想考虑Profile Card 的value。 IE。在 Aviation Profile Card 中具有 10 的结果项应该比在 Aviation Profile Card 中具有 5 的另一个结果更相关。
一个明显的方法是通过Boosting 实现这一点,但这需要在Indexing 时间而不是Search 时间发生。
有没有办法在索引时根据字段中的值应用提升?还是有别的办法?
可以选择在搜索后按个人资料卡值对结果进行排序,但这不是很高效,而是将开销放在索引时。
【问题讨论】:
-
前几天我正在处理这个问题。我试图使用 Lucene 子文档,但我不确定这是否可行。还考虑将 Coveo 作为一个可能的选择。我还没有提出解决方案,但我正在努力创建一个新索引,它只索引项目、个人资料卡和值。我将把每个配置文件和值作为分隔值推送到单个字段中。这样,我可以获取我的结果、提取配置文件值并即时计算排名。
-
我认为您正朝着与我相同的方向前进。只是为了帮助你,我想参考我的博客文章,在那里我从跟踪器性能中获取配置文件。 waitingimpatiently.com/…
-
我曾考虑在您的博客使用的带有管道分隔符的单个字段中使用配置文件 ID 和值。你是怎么找到的?感谢分享帖子,任何有助于提高性能的东西:)
标签: c# lucene sitecore sitecore8