Sphinx
Sphinx(SQL Phrase Index)是一个基于SQL的全文检索引擎,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx可以与SQL数据库和脚本语言集成,系统内置MySQL和PostgreSQL数据库数据源的支持,也支持从标准输入读取特定格式的XML数据。搜索API支持PHP、Python、Perl、rudy和Java,并且也可以用作MySQL存储引擎。
软件介绍
软件特点
- 高速的建立索引(在当代CPU上,峰值性能可达到10 MB/秒);
- 高性能的搜索(在2 – 4GB 的文本数据上,平均每次检索响应时间小于0.1秒);
- 可处理海量数据(目前已知可以处理超过100 GB的文本数据, 在单一CPU的系统上可处理100 M 文档);
- 提供了优秀的相关度算法,基于短语相似度和统计(BM25)的复合Ranking方法;
- 支持分布式搜索;
- 可作为MySQL的存储引擎提供搜索服务;
- 支持布尔、短语、词语相似度等多种检索模式;
- 文档支持多个全文检索字段(最大不超过32个);
- 文档支持多个额外的属性信息(例如:分组信息,时间戳等);
- 停止词查询;
- 支持单一字节编码和UTF-8编码;
- 原生的MySQL支持(同时支持MyISAM 和InnoDB );
- 原生的PostgreSQL支持。
主要功能
- 关键字字典(快译通=关键字)支持RT索引
- MVA,index_exact_words支持RT索引
- MVA64支持两个磁盘和RT索引(rt_attr_multi_64指令)
- 添加基于表达式的RANKER,和一些新的排名因素
- ATTACH INDEX语句可将磁盘指数转换成RT指数
- UPDATE语句的WHERE子句支持
使用手册
安装
- 支持的操作系统
- 需要的工具
- 在Linux、BSD上安装Sphinx
- 在Windows上安装Sphinx
- 已知的安装问题和解决办法
- Sphinx快速入门教程
建立索引
- 数据源
- 属性
- MVA
- 索引
- 源数据的限制
- 字符集、大小写转换和转换表
- SQL 数据源
- xmlpipe 数据源
- xmlpipe2 数据源
- Python 数据源
- 实时索引更新
- 索引合并
搜索
- 匹配模式
- 布尔查询语法
- 扩展查询语法
- 权值计算
- 排序模式
- 结果分组
- 分布式搜索
- searchd查询日志格式
- MySQL 协议支持与SphinxQL
命令行工具参考
- indexer命令参考
- searchd命令参考
- search命令参考
- spelldump命令参考
- indextool命令参考
MySQL存储引擎
- SphinxSE 概览
- 安装 SphinxSE
- 使用 SphinxSE
- 通过 MySQL 生成片段
相关条目
- PostgreSQL
- SQL
- MySQL
- 数据库
- PHP
请先 登录后发表评论 ~