发布于 2015-06-12 12:07:49 | 247 次阅读 | 评论: 0 | 来源: 网友投递
Sphinx 全文检索引擎
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。
install sphinx 推荐安装sphinx 2.0.7-release http://sphinxsearch.com
wget http://sphinxsearch.com/files/sphinx-2.0.8-release.tar.gz
tar zxvf sphinx-2.0.8-release.tar.gz
cd sphinx-2.0.8-release
./configure --prefix=/usr/local/webserver/sphinx --with-mysql=
make && make install
注释:
--prefix : 指定Sphinx安装到何处,我的安装目录是“/usr/local/webserver/sphinx”
--with-mysql : mysql的安装目录
其他的参数 请用./configure help查看,建议使用以上参数
运行sphinx searchd命令:如看到以下信息则表示安装成功 (根据自己配置/usr/local/webserver/sphinx/bin是否需要放在环境变量中)
[root@centos44 ~]# searchd Sphinx 2.0.8-release (r3831) Copyright (c) 2001-2012, Andrew Aksyonoff Copyright (c) 2008-2012, Sphinx Technologies Inc (http://sphinxsearch.com) FATAL: no readable config file (looked in /usr/local/webserver/sphinx/etc/sphinx.conf, ./sphinx.conf). install scws http://www.xunsearch.com/scws/download.php
wget http://www.xunsearch.com/scws/down/scws-1.2.2.tar.bz2
tar xvf scws-1.2.2.tar.bz2
cd scws-1.2.2
./configure --prefix=/usr/local/webserver/scws
make && make install
安装php的scws扩展(回到scws源目录中scws-1.2.2)
cd phpext/
/usr/local/webserver/php/bin/phpize
./configure --with-scws=/usr/local/webserver/scws/ --with-php-config=/usr/local/webserver/php/bin/php-config
make && make install
配置php.ini,在php.ini中添加如下代码
[scws]
extension = scws.so
scws.default.charset = utf8
;以下的的路径就是编译时的--with-scws的值
scws.default.fpath = /usr/local/webserver/scws/
[root@centos44 www]# php phpinfo.php | grep scws
scws
SCWS BugReport => http://www.xunsearch.com/scws
scws.default.charset => utf8 => utf8
scws.default.fpath => /usr/local/webserver/scws/ => /usr/local/webserver/scws/
cd /usr/local/webserver/scws/etc/ wget http://www.xunsearch.com/scws/down/scws-dict-chs-gbk.tar.bz2 tar xvjf scws-dict-chs-gbk.tar.bz2 wget http://www.xunsearch.com/scws/down/scws-dict-chs-utf8.tar.bz2 tar xvjf scws-dict-chs-utf8.tar.bz2 注意:scws只能单机部署,如果是集群部署每台web机都需要部署scws
SCWS 是 Simple Chinese Word Segmentation 的首字母缩写(即:简易中文分词系统)。
这是一套基于词频词典的机械式中文分词引擎,它能将一整段的中文文本基本正确地切分成词。 词是中文的最小语素单位,但在书写时并不像英语会在词之间用空格分开, 所以如何准确并快速分词一直是中文分词的攻关难点。
SCWS 采用纯 C 语言开发,不依赖任何外部库函数,可直接使用动态链接库嵌入应用程序, 支持的中文编码包括 GBK、UTF-8 等。此外还提供了 PHP 扩展模块, 可在 PHP 中快速而方便地使用分词功能。
分 词算法上并无太多创新成分,采用的是自己采集的词频词典,并辅以一定的专有名称,人名,地名, 数字年代等规则识别来达到基本分词,经小范围测试准确率在 90% ~ 95% 之间, 基本上能满足一些小型搜索引擎、关键字提取等场合运用。首次雏形版本发布于 2005 年底。