MySQL Sphinx 进行全文索引

What Is Sphinx?

检索非结构化数据, 例如包含某个词的文章等

替代原有的顺序查找, 正则匹配.

优点

高速创建/检索索引, 海量数据(100GB+), 优秀相关度算法, 分布式搜索, 文档片段生成(摘要,高亮)

扩展 MySQL, 支持 Bool,短语,词语相似度等多种检索模式

最大支持 32 个全文检索字段

缺点

被检索表必须有整形主键(一般为 auto_increment), 不负责存储数据, 配置不灵活

检索原理

创建索引

切分词

中文分词 coreseek, MMSeg

语言处理(转换语言->英文时态等得到原型)
开始索引

排序去重, 构建文档频率, 词频.

搜索索引

得到查询请求, 切分词, 语言处理, 在索引中搜索得到文档 IDs, 根据词频排序.

安装 Sphinx

Donate - Support to make this site better.
捐助 - 支持我让我做得更好.