Sphinx的安装和使用

2022-03-21 00:00:00 索引 查询 数据 数据源 分词

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

相关文章