说我有这些字段声明:
<field name="Title" type="text_general" stored="true" multiValued="false" />
<field name="Body" type="text_general" stored="true" multiValued="false" />
Run Code Online (Sandbox Code Playgroud)
当我对"标题"进行索引时,我将提升设置为5,这意味着"标题"字段中的单词应该计为正常的5倍.
然后我这样做:
<copyField source="Title" dest="SearchText"/>
<copyField source="Body" dest="SearchText"/>
Run Code Online (Sandbox Code Playgroud)
所以,我已将这两个字段复制到另一个名为"SearchText"的字段中.
当我搜索"SearchText"时,"标题"字段中的术语是否还带有5倍提升?或者他们在副本中丢失了吗?当你做一个copyField时,所有字段的提升是否会"平稳"?
Dea*_*ane 10
在做了一些阅读之后,我认为提升被剥夺了.我们的解决方案就是:
我们创建了四个字段:SearchText,SearchText2,SearchText3和SearchText4.我们将所有内容复制到SearchText中,将一些内容复制到SearchText2中,将少量内容复制到SearchText3中,并将只有超级关键内容复制到SearchText4中.
然后,我们的"qf"参数看起来像这样:
SearchText, SearchText2^3, SearchText3^10, SearchText4^100
Run Code Online (Sandbox Code Playgroud)
因此,我们在查询时将字段提升为无,3,10和100.
它看起来并不优雅,但效果很好,它允许我们在不重新索引的情况下调整增强.
此外,这里有一个抽象层:通过把东西SearchText2,比如,我们说"这很重要,"不过,我们还没有确定如何重要(在数值提升的方面),直到查询时间.因此,copyField是抽象,而实现中的"qf"参数.
| 归档时间: |
|
| 查看次数: |
1299 次 |
| 最近记录: |