Solr Elasticsearch Whoosh Sphinx简介
Solr Elasticsearch Whoosh Sphinx简介
Sphinx简介(测试失败)
1. Sphinx是什么?
中文名:全文索引引擎。只支持英文和俄文。但是只要有相应的语言包也可支持任何语言。国内有一团队在Sphinx基础上封装了一个带中文包的软件:coreseek。
2. 为什么要用Sphinx?
在mysql数据库中,对于如下sql语句,select * from xxx where like xxx '%xxx'; (以%开头的like查询),无法使用到任何索引优化,导致如果数据量非常大,查询速度会非常慢。而这种sql语句在很多功能中都要用到,如根据歌词查询歌曲,根据剧情查询电影等。如果要加快查询只能使用第三方软件,Sphinx和lucence。mysql中也提供了全文索引的功能,但是有两个问题:(1)只有myisam引擎支持(2)对中文支持不好。不过现在最新的mysql5.6版本中的innodb1.2的版本也同样支持全文索引。
3. Sphinx的使用原理
(1)先创建数据源。
(2)根据数据源创建索引,使用分词技术。
(3)php把查询的关键词给Sphinx服务器,Sphinx根据关键词查找到关键字在mysql表里面的记录的id.Sphinx把id返回给php查询端。
(4)php根据返回的id,查询mysql服务器。
https://www.cnblogs.com/chenjiacheng/p/6747398.html
ElasticSearch和whoosh实现项目中搜索功能
https://blog.csdn.net/big_white_py/article/details/108231182
laravel solr使用PHP(Laravel)实现Solr全文搜索详细过程
https://blog.csdn.net/weixin_38730732/article/details/81359984
Elasticsearch-PHP
https://www.elastic.co/guide/cn/elasticsearch/php/current/index.html