Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在mysql中搜索大数据+;使用Trie的PHP_Php_Mysql_Search - Fatal编程技术网

在mysql中搜索大数据+;使用Trie的PHP

在mysql中搜索大数据+;使用Trie的PHP,php,mysql,search,Php,Mysql,Search,我有一个项目,需要搜索功能,在大型数据库。例如,我想从8000ish记录中搜索关键字。搜索将检查每个记录的7个字段。 我想有相关搜索,小姐类型可以带来建议的结果,像我搜索:布雷克,将带来黑色的结果(他打算得到这个黑色的结果) 我试着使用Levenshtein,但它的方式太慢了。 我在读关于PHPTrie的书,它使用PHP实现Trie。我确实找到了也能做到这一点的代码()。我尝试这样做是因为我读到使用Trie的时间会快很多。但是我没有得到更多的信息,我的PHP技能也没有进步到足以自己创建。 我的问

我有一个项目,需要搜索功能,在大型数据库。例如,我想从8000ish记录中搜索关键字。搜索将检查每个记录的7个字段。
我想有相关搜索,小姐类型可以带来建议的结果,像我搜索:布雷克,将带来黑色的结果(他打算得到这个黑色的结果)

我试着使用Levenshtein,但它的方式太慢了。 我在读关于PHPTrie的书,它使用PHP实现Trie。我确实找到了也能做到这一点的代码()。我尝试这样做是因为我读到使用Trie的时间会快很多。但是我没有得到更多的信息,我的PHP技能也没有进步到足以自己创建。 我的问题是,如何实施trie?有什么细节吗?在上面链接中提供的类中,它具有搜索功能,但不提供任何内容


或者我的问题还有其他解决方案吗?

使用类似的搜索索引。你可以给索引中的条目一个“权重”,换句话说就是相关性。如果您不想使用专用索引数据库,您必须自己计算权重或相关性,并为每条记录存储它。

谢谢!这确实帮助了我,但我不能使用这个项目的外部数据库。必须在我自己的数据库中,我读到,在ES中,我们必须把关键字放在那里,对吗?很遗憾,我不能这么做。不,ES不是这样工作的。阅读手册。就像我说的,如果你不能使用另一个数据库,你必须添加你自己的相关性计算,并将它与你的数据一起存储在表中,然后按它排序。