Yog*_*ita 2 solr dismax edismax
Solr 支持 dismax 查询解析器和 edismax 查询解析器。我们如何得出何时使用 dismax 以及何时使用 edismax 的结论?我们什么时候应该使用 edismax 而不是 dismax?
除了支持所有 DisMax 查询解析器参数,Extended Dismax:
支持完整的 Lucene 查询解析器语法。
支持 AND、OR、NOT、- 和 + 等查询。
在 Lucene 语法模式中将“and”和“or”视为“AND”和“OR”。
尊重“魔法场”名称 _val_ 和 _query_。这些不是 Schema 中的真正字段,但如果使用它有助于做一些特殊的事情(例如 _val_ 情况下的函数查询或 _query_ 情况下的嵌套查询)。如果在术语或短语查询中使用 _val_,则该值被解析为函数。
包括在语法错误的情况下改进的智能部分转义;此模式下仍支持字段查询、+/- 和短语查询。
通过使用字瓦改善邻近度提升;在应用邻近度提升之前,您不需要查询来匹配文档中的所有单词。
包括高级停用词处理:在查询的强制部分中不需要停用词,但仍会在邻近度提升部分中使用。如果查询包含所有停用词,例如“to be or not to be”,则所有单词都是必需的。
包括改进的升压功能:在 Extended DisMax 中,升压功能是一个乘数而不是加数,从而改善您的升压效果;还支持 DisMax(bf 和 bq)的附加增强功能。
支持纯否定嵌套查询:诸如 +foo (-foo) 之类的查询将匹配所有文档。
允许您指定允许最终用户查询哪些字段,并禁止直接字段搜索。
这些功能对您是否重要取决于您自己的用例,但在大多数情况下,没有理由使用 dismax 而不是 edismax - edismax 更灵活,并修复了多年来逐渐出现的 dismax 的一些问题。除非您有非常具体的原因,否则请使用 edismax。
| 归档时间: |
|
| 查看次数: |
738 次 |
| 最近记录: |