Mysql 为什么斯芬克斯的查询这么慢?按id描述订购
$x是一个小于1000的数字(由于max_匹配),postalcodes索引包含约110万行 查询时间:0,17秒Mysql 为什么斯芬克斯的查询这么慢?按id描述订购,mysql,search-engine,sphinx,performance-testing,Mysql,Search Engine,Sphinx,Performance Testing,$x是一个小于1000的数字(由于max_匹配),postalcodes索引包含约110万行 查询时间:0,17秒 为什么要花这么长时间?在索引末尾有更好的查询方法吗?为什么?sphinx按原样执行该查询的唯一方法是获取所有行,对它们进行排序,然后迭代以找到所需的行 正如评论中所指出的,sphinx并不像mysql那样有索引的概念。(理论上,sphinx应用于全文搜索,使用特殊的倒排索引) 这里有一些讨论,, 关于可能的解决办法 使用反向扫描,以及可能的切断,可能会对您有所帮助 SELECT
为什么要花这么长时间?在索引末尾有更好的查询方法吗?为什么?sphinx按原样执行该查询的唯一方法是获取所有行,对它们进行排序,然后迭代以找到所需的行 正如评论中所指出的,sphinx并不像mysql那样有索引的概念。(理论上,sphinx应用于全文搜索,使用特殊的倒排索引)
这里有一些讨论,, 关于可能的解决办法 使用反向扫描,以及可能的切断,可能会对您有所帮助
SELECT id FROM postalcodes ORDER BY id DESC LIMIT $x, 1
虽然如果您最终向where添加了一个“匹配项”,那么您最终将无法执行隐式排序,因此如果没有orderby,查询将无法工作,在这种情况下,reverse_scan将没有帮助 为什么?sphinx按原样执行该查询的唯一方法是获取所有行,对它们进行排序,然后迭代以找到所需的行 正如评论中所指出的,sphinx并不像mysql那样有索引的概念。(理论上,sphinx应用于全文搜索,使用特殊的倒排索引)
这里有一些讨论,, 关于可能的解决办法 使用反向扫描,以及可能的切断,可能会对您有所帮助
SELECT id FROM postalcodes ORDER BY id DESC LIMIT $x, 1
虽然如果您最终向where添加了一个“匹配项”,那么您最终将无法执行隐式排序,因此如果没有orderby,查询将无法工作,在这种情况下,reverse_scan将没有帮助 为什么?sphinx按原样执行该查询的唯一方法是获取所有行,对它们进行排序,然后迭代以找到所需的行 正如评论中所指出的,sphinx并不像mysql那样有索引的概念。(理论上,sphinx应用于全文搜索,使用特殊的倒排索引)
这里有一些讨论,, 关于可能的解决办法 使用反向扫描,以及可能的切断,可能会对您有所帮助
SELECT id FROM postalcodes ORDER BY id DESC LIMIT $x, 1
虽然如果您最终向where添加了一个“匹配项”,那么您最终将无法执行隐式排序,因此如果没有orderby,查询将无法工作,在这种情况下,reverse_scan将没有帮助 为什么?sphinx按原样执行该查询的唯一方法是获取所有行,对它们进行排序,然后迭代以找到所需的行 正如评论中所指出的,sphinx并不像mysql那样有索引的概念。(理论上,sphinx应用于全文搜索,使用特殊的倒排索引)
这里有一些讨论,, 关于可能的解决办法 使用反向扫描,以及可能的切断,可能会对您有所帮助
SELECT id FROM postalcodes ORDER BY id DESC LIMIT $x, 1
虽然如果您最终向where添加了一个“匹配项”,那么您最终将无法执行隐式排序,因此如果没有orderby,查询将无法工作,在这种情况下,reverse_scan将没有帮助 您可以添加索引以使查询更快捷,听起来像是Avinash在谈论MySQL。无法在sphinx中添加索引!您可以添加索引以使查询更快捷,听起来像是Avinash在谈论MySQL。无法在sphinx中添加索引!您可以添加索引以使查询更快捷,听起来像是Avinash在谈论MySQL。无法在sphinx中添加索引!您可以添加索引以使查询更快捷,听起来像是Avinash在谈论MySQL。无法在sphinx中添加索引!谢谢巴里汉特,狮身人面像国王!:)谢谢巴里汉特,狮身人面像国王!:)谢谢巴里汉特,狮身人面像国王!:)谢谢巴里汉特,狮身人面像国王!:)