我在我的SOLR索引歌曲对象中有属于更高级别的专辑对象.一个例子如下所示:
<song>
<album title>Blood Sugar Sex Magic</album title>
<song title>Under the Bridge</song title>
<description>A sad song about junkies</description>
</song>
Run Code Online (Sandbox Code Playgroud)
我现在可以做的是在专辑标题上创建一个方面,这样搜索歌曲也会告诉我哪些专辑包含该关键字的点击.
SOLR的默认行为是,facet按照大多数命中的顺序显示为最少.然而,我想要实现的是根据该专辑的最高点击的相关性对要素进行排序的方面列表.
例如,对"悲伤"一词的搜索可能会显示"血糖性魔术"的一个方面,并且可能还有一张名为"悲伤小丑歌曲"的专辑,其中有10个命中."悲伤的小丑歌曲"将显示为第一个方面,尽管它可能是"在桥下"出现的最相关的歌曲.
我的问题是如何才能获得所有方面,然后根据其中歌曲的相关性对它们进行排序?如果我需要更改或扩展一些基础SOLR代码那会是什么?
提前致谢.
这两个过滤器有什么区别?他们似乎有同样的效果?
任何人都可以提供一些如何应用于某些文本的示例吗?
我有一个相对简单的(我认为)用例,但我找不到任何有人这样做的例子.我们在两个不同的应用程序前面使用Varnish作为缓存和反向代理,并希望在两者之间做一些事情,因为它们都做类似的事情.我希望Varnish可以帮助重写URL,如下所示.
分页的原始应用程序URL(获取前10项):
http://myapplication.com/products/?startindex=1&endindex=10
Run Code Online (Sandbox Code Playgroud)
所需网址:
http://myapplication.com/products/?paginate=1:10
Run Code Online (Sandbox Code Playgroud)
这只是一个例子(最复杂的因为它结合了两个参数),但在所有情况下参数的输入值都保持不变,只是参数名称会改变.
另一个例子是:
http://myapplication.com/search/?query=something
Run Code Online (Sandbox Code Playgroud)
至:
http://myapplication.com/search/?q=something
Run Code Online (Sandbox Code Playgroud)
有没有人有清漆的经验,以及如何做到这一点?
谢谢
我在Solr中创建了一个请求处理程序,它使用dismax并将我的查询限制到某些字段,并在"title"字段上添加了相关性的提升.
当我在浏览器中使用http请求直接访问Solr时,这一切都正常.但是我的问题是,如果我使用SolrJ访问Solr,是否可以使用请求处理程序?
如果我可以在请求处理程序中控制boost和过滤器等而不是必须进行代码更改,但我无法看到如何在API中指定请求处理程序.
有任何想法吗?