我们最近做了一些关于如何在sphinxsearch中加快速度的研究。
我们发现加快速度的好方法是使用分布式索引。
我们运行了实际测试,发现当使用分布式索引时,查询执行速度提高了35-40%。
我的意思是分布式基本上是我们的常规索引,通过将AND id % 4/3/2/1 = 0
添加到每个源中,分成4个(托管此索引的框有4个核心),用于索引的每个部分。
仅供参考,id是我们的主键/自动增量。
那么这应该做什么而不是拥有一个巨大的索引将其分成4个。
然后我们只使用索引类型=分布式+本地....本地....本地....本地....用于'将所有部分放在一起'索引。
我们做了一些快速测试,同样的结果又回来了......只有35-40%的速度更快:)。
因此,在我们实施此网站之前,我们想知道:
切换到如上所述的分布式索引会不会影响排序?
我们之所以这样问是因为我们将sphinx用于一些SEO相关项目,我们需要保持结果的顺序相同。
我还应该提一下,查询,所有查询选项等保持不变。任何和所有更改都在守护程序结束时完成。
谢谢!
答案 0 :(得分:3)
排序应该不受影响。使用分布索引和高偏移时,您会遇到更大的性能损失。但前几页会很好。
据我所知,问题在于使用分组/群集和kill-lists。但如果不使用它们,应该无需担心。