Sphinx的安装和使用
sphinx的使用两种方式:
1、使用sphinx的API来操作sphinx,PHP中将API编译到PHP中作为扩展
2、使用mysql的sphinx的存储引擎
sphinx是英文的全文检索引擎,coreseek是支持中文词库的全文检索引擎,Lucene是用java实现的全文检索引擎。
使用sphinx搜索引擎对数据做索引,数据一次性加载进来后保存在内存中,用户在进行搜索的时候只需要在sphinx服务器上检索数据即可。整个流程是:Indexer程序到数据库里面提取数据,对数据进行分词,然后根据生成的分词生成单个或多个索引,并将它们传递给searchd程序,然后客户端可以通过API调用进行搜索。
流程图解释:
Database:数据源,是sphinx做索引的数据来源。
Indexer:索引程序,从数据源中获取数据,并将数据生成全文索引。根据需求定期运行Indexer达到定时更新索引的需求。
## sphinx使用配置文件从数据库读出数据之后,就将数据传递给Indexer程序,然后Indexer会逐条读取记录,根据分词算法对每条记录建立索引,分词算法可以是一元分词或mmseg分词。
Searchd:Searchd直接与客户端程序进行对话,并使用Indexer程序构建好的索引来快速地处理搜索查询。
App客户端:接收来自用户输入的搜索字符串,发送查询给searchd程序并显示返回结果。
【安装过程】
1
相关文章 |