问题描述
||
我有一个MysqL数据库表,其中包含以下多个记录:
\"word-A\" -- \"words related to word-A\"
例如:
椅子-家具;桌子;办公椅;餐厅椅子
我目前正在使用MysqL全文对抗查询(普通对抗,而非布尔模式)来将句子与这些单词进行匹配。
我将结果限制为5。我正在使用全文索引,并且还将这些索引加载到缓存中。
该查询为我提供了良好的质量结果,但速度很慢(100毫秒或更长)。
我尝试为此使用Sphinx。它非常快,但结果与MysqL全文查询的结果不同。一些结果是相同的,但通常顺序不同,而其他结果则完全不同。
出于句子匹配的目的,MysqL全文是否比Sphinx好?
我可以配置Sphinx以获得与MysqL全文搜索类似的结果吗?
目前,我正在使用以下配置:
SPH_MATCH_EXTENDED2
SPH_SORT_RELEVANCE
SPH_RANK_PROXIMITY_BM25 (also tried SPH_RANK_BM25)
stopwords enabled
The min_word_len is set to 2 - same as that in my MysqL config.
解决方法
如果不查看Sphinx配置,参考数据和查询,很难推荐一些东西。
值得提供几个文档和一个应该匹配的查询。