【问题标题】:Changing Sphinx maximum query length更改 Sphinx 最大查询长度
【发布时间】:2016-09-06 15:30:21
【问题描述】:

我使用 Sphinx 2.0.4 和 PHP 并启用了扩展匹配模式。当我尝试使用 Sphinx 查询语言时,如果我使用 10 个或更少的单词,我只能得到结果。例如,如果我搜索a | b 之类的内容,它会正常工作,但如果我搜索a | b | c | d | e | f | g | h | i | j | k,它总是不会返回任何结果,即使有匹配项。有人知道增加此限制的设置吗?我在配置文件中四处寻找,但我所做的更改似乎没有改变任何东西。

【问题讨论】:

  • 你是否使用了 php API 并检查了 sphinx 日志?我可以轻松搜索 11 个以上的单词

标签: php sphinx


【解决方案1】:

你确定是这个问题吗?我使用查询的时间比这长得多(例如,有超过 100 个 or'ed 关键字),效果很好。

其实刚试过……

select * from sample8 where match('one | two | three | four | five | six | seven | eight | nine | ten | eleven | twelve');
<SNIP>
20 rows in set (0.28 sec)

select * from sample8 where match('a | b | c | d | e | f | g | h | i | j | k');
<SNIP>
20 rows in set (1.14 sec)

建议发布一个失败的真实真实查询,而不是假的。

【讨论】:

  • 你是对的,这是一个完全不相关的问题,10 个单词的事情是巧合。感谢您帮助我缩小范围!
【解决方案2】:

如果您不使用 SPH_MATCH_EXTENDED/SPH_MATCH_EXTENDED2 匹配模式,则仅使用来自查询的 10 个关键字。 Extended2 为默认模式,支持查询语言,不仅支持 SPH_MATCH_BOOLEAN 模式等布尔运算符。

Andrew Aksyonoff 在这里谈到了限制http://sphinxsearch.com/forum/view.html?id=1743

有关匹配模式的更多信息,请参阅http://sphinxsearch.com/docs/current.html#matching-modes

【讨论】:

    猜你喜欢
    • 2011-06-23
    • 2015-12-30
    • 1970-01-01
    • 2012-02-08
    • 1970-01-01
    • 2018-11-11
    • 2014-05-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多