本文档为《Sphinx搜索引擎架构及使用》第1.1版,详细介绍了如何结合MySQL数据库构建高效全文搜索解决方案,涵盖安装配置、索引建立与查询优化等内容。
一、搜索引擎架构设计:
31. 搜索引擎架构图(基于PHP+MySQL+Sphinx)。
32. 搜索引擎架构设计思路:
- 3⑴ 调用方式最简化。
- 3⑵ 创建索引和查询速度快。
- 3⑶ 按服务类型进行分离。
- 4⑷ 主索引+增量索引更新方式。
- 4⑸ Ext3文件系统+tmpfs内存文件系统相结合。
- 4⑹ 中文分词词库。
二、MYSQL+Sphinx+SphinxSE安装步骤:
5. 安装python支持
6. 编译安装LibMMSeg
7. 编译安装MySQL 5.1.26-rc,Sphinx和SphinxSE存储引擎。
8. 创建Sphinx索引文件和MySQL数据文件存放目录。
9. 制作一份MySQL Slave供搜索引擎使用。
三、配置:
10. 创建快捷启动、停止、重启及杀死MySQL进程的脚本(以db11的3306端口为例)。
四、创建并维护Sphinx索引:
- 生成Sphinx中文分词词库
- 构造词典。
- 确定词典文件格式。
- 创建XX网搜索引擎的中文分词词库。
- 创建主索引和增量索引存放目录。
- 配置并初始化sphinx.conf中的全部索引,创建用于更新主、增量索引的shell脚本,并设置定时任务以定期重建这些索引。
五、启动Sphinx守护进程(searchd):
1. 启动Sphinx守护进程。
2. 配置服务器开机时自动执行命令。
3. 创建Sphinx存储引擎表,包括设置/etc/hosts文件,登录MySQL并创建数据库Sphinx和相应的表。
六、SQL调用搜索引擎实例:
- 通过具体的搜索应用展示如何使用SQL语句调用搜索引擎功能。例如,在XX网北京出租房及小区搜索中演示使用。
- 说明SphinxSE存储引擎的详细语法及其在查询中的运用,包括指定字段内关键词搜寻的例子。
以上内容概述了基于PHP+MySQL+Sphinx构建高效搜索引擎的整体架构设计、核心组件安装配置流程以及关键索引管理步骤,并展示了如何通过SQL语句调用该系统实现具体搜索功能。