0

我正在尝试使用 Solr 在我们的 Intranet 上索引和搜索 wiki。我或多或少地使用 edismax 工作,但我无法让主要主题页面首先出现在搜索结果中。例如,假设我在数据库中有一些 URL:

http://whizbang.com/wiki/Foo/Bar
http://whizbang.com/wiki/Foo/Bar/One
http://whizbang.com/wiki/Foo/Bar/Two
http://whizbang.com/wiki/Foo/Bar/Two/Two_point_one

我希望能够搜索“foo bar”并将第一个链接作为顶部结果返回,因为它是 wiki 中该特定主题的主页。我尝试在搜索中提高标题和 URL 字段,但文档的 fieldNorm 值不断影响分数,因此子页面的分数更高。在一种特殊情况下,主题页面显示在第二个结果页面上。

有没有办法让第一个 URL 得分显着高于子类别,以便它显示在前 5 个搜索结果中?

4

1 回答 1

1

一种可能的尝试方法:

  1. 使用您的 url 创建一个 copyField
  2. 仅提取路径(因此,没有主机,没有 wiki)
  3. 拆分 / 可能还有空间
  4. 小写
  5. 提高短语或二元组或类似的东西。

如果您有很多级别,也许您想要一个多值字段,具有不同的深度(从末尾开始)获得单独的条目。这样一个完美的匹配将获得更好的价值。在这里,您应该开始尝试真正的搜索。

于 2014-01-28T08:39:27.290 回答