0

我在执行过程中度过了一段愉快的时光。

我们有一个 solr 服务器正在运行。我们有 3 个核心,为了简单起见,我们称它们为“成员”、“企业”和“产品”

我试图使用 solrnet,但它不支持分片。所以,我担心我必须自己构建 url。

因此,当我发现问题时,我使用管理工具构建了一些示例 url 用于查询。Solr 执行“等于”而不是“包含”,并且区分大小写。我知道我可能做错了。

所以,我读过我需要将 qt 参数设置为“dismax”,只有当我只搜索会员的核心时,通过管理工具,我才得到“未定义的字段价格”....我的会员没有价格字段。我的产品可以。

我需要对我的查询执行以下操作。

  1. 跨多核搜索(分片)
  2. 不区分大小写
  3. 包含单词而不是等于单词
  4. 搜索多个字段
  5. 声明字段的优先级(首先搜索名称,然后是描述等)

我的查询可能全错了,但这就是它的样子(更改了服务器名以保护无辜者)名称字段实际上是用户的名字和姓氏的串联......所以我试图看看 dismax 是否会看到该名称包含单词 jim(不区分大小写)。

mysolrserver.mydomain.int:8080/solrQA/select?indent=on&version=2.2&q=名称:jim&fq=&start=0&rows=10&fl=*%2Cscore&qt=dismax&wt=standard&explainOther=&hl.fl=&shards=mysolrserver.mydomain.int:8080 /成员,mysolrserver.mydomain.int:8080/企业

任何帮助将不胜感激。

4

1 回答 1

3
  1. SolrNet 和分片:您尝试过ExtraParams属性吗?
  2. 不区分大小写:这由LowerCaseFilterFactory处理
  3. 包含单词:这由标记器处理,例如 WhitespaceTokenizerFactory。
  4. 搜索多个字段并提升:由于您使用的是 dismax,请参阅qf参数。
于 2010-08-26T00:44:49.713 回答