我有一个包含8600万行的mysql数据集。
我需要对这些数据进行相对快速的搜索。
我要搜索的数据都是字符串。
我还需要进行部分匹配。
现在,如果我有'foobar'并搜索'%oob%',我知道它会非常慢 - 它必须查看每一行以查看是否匹配。
可以使用哪些方法来加速这样的查询?
答案 0 :(得分:1)
您寻求的是Full Text Search。这将使您能够快速进行部分匹配并快速搜索多个列。
答案 1 :(得分:1)
我不认为全文搜索会允许部分匹配(我可能错了)。
您可以查看Sphinx Search这是一个全文和部分匹配搜索引擎系统。您可以轻松地将mysql数据导入其中,然后使用简单的PHP查询来搜索数据。它比使用MySQL进行查询效率更高。