PHP MySQl搜索引擎建议
我正在尝试做一个智能的多语言PHP搜索引擎。例如,我想搜索PHP MySQl搜索引擎建议,php,mysql,search-engine,Php,Mysql,Search Engine,我正在尝试做一个智能的多语言PHP搜索引擎。例如,我想搜索samsung smarthphone,并在smasung smortphone中键入用户。这是从1000000行数据库中提取的最佳方法。 我的想法是选择这个REGEXP(在本例中)匹配的行 这是选择包含至少4或5个用户输入字母的单词的所有行。但这意味着在每个选定行上运行这个regexp,然后levensteinn使用用户输入匹配并保存最佳匹配。对于100万人来说,这是相当缓慢的。你有更好的主意吗?我知道这个问题,所以我已经将我所有的重要
samsung smarthphone
,并在smasung smortphone
中键入用户。这是从1000000行数据库中提取的最佳方法。
我的想法是选择这个REGEXP(在本例中)匹配的行
这是选择包含至少4或5个用户输入字母的单词的所有行。但这意味着在每个选定行上运行这个regexp,然后levensteinn使用用户输入匹配并保存最佳匹配。对于100万人来说,这是相当缓慢的。你有更好的主意吗?我知道这个问题,所以我已经将我所有的重要记录导出到elasticsearch(NoSql,非常容易安装)。接下来实现了模糊搜索。(内置)
'[a-zA-z]*[smasung]{4,}[a-zA-Z]*' AND '[a-zA-Z]*[smortphone]{5,}[a-zA-Z]*'
{
"multi_match" : {
"fields" : ["product"],
"query" : "smasung smortphone",
"fuzziness" : "AUTO"
}
}