2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Sphinx(斯芬克斯的安装及使用)

Sphinx(斯芬克斯的安装及使用)

时间:2023-10-17 07:48:18

相关推荐

Sphinx(斯芬克斯的安装及使用)

1.说明:

Sphinx是一个基于SQL的全文检索引擎,可以结合 MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,Python,Perl,Ruby等,同时为MySQL也设计了一个存储引擎插件。

Sphinx 单一索引最大可包含1亿条记录,在1千万条记录情况下的查询速度为0.x秒(毫秒级)。Sphinx创建索引的速度为:创建100万条记录的索引只需 3~4分钟,创建1000万条记录的索引可以在50分钟内完成,而只包含最新10万条记录的增量索引,重建一次只需几十秒。

Sphinx的主要特性包括:高 速索引 (在新款CPU上,近10 MB/秒); 高速搜索 (2-4G的文本量中平均查询速度不到0.1秒); 高可用性 (单CPU上最大可支持100 GB的文本,100M文档); 提供良好的相关性排名 支持分布式搜索; 提供文档摘要生成; 提供从MySQL内部的插件式存储引擎上搜索 支持布尔,短语, 和近义词查询; 支持每个文档多个全文检索域(默认最大32个); 支持每个文档多属性; 支持断词; 支持单字节编码与UTF-8编码;

2.windows下面的安装使用:

我们一般安装的sphinx大多数是Coreseek:

coreseek是一款基于sphinx开源的搜索引擎,专门为用户提供免费的中文全文检索系统,coreseek被称为带有中文分词的sphinx,与sphinx不同的是coreseek增加了一个带有中文分词的词库,这里使用了coreseek 3.2.14版本进行解讲。我是在F盘下安装的所以下面都是在F盘操作。

1>首先将coreseek-3.2.14-win32.zip打开解压。

2>由于coreseek是开源产品,所以在windows下面不需要安装,我们直接进入即可。

3>进入后我们看到如图所示文件:

4>进入etc目录打开csft_mysql.conf文件,修改文件:

图文中讲的已经非常详细了,这里我说一下红线标记的地方region_id都要换成你表中的主键id。

5>使用cmd命令行进入该目录如图:

6>输入如下命令 开始生成索引文件

.\bin\indexer.exe -c .\etc\csft_mysql.conf --all

输入完毕之后出现如下图所示你的索引就创建好啦!(如图):

7>输入以下命令开启coreseek

.\bin\searchd.exe -c .\etc\csft_mysql.conf

输入完毕如下图所示如果没出任何问题你的coreseek搜索服务就开启拉

安装到这里就结束了!!!下面给大家在php中,yii框架中使用一下。

1.PHP中使用:

我的环境是PHPStudy所有我放在WWW目录下我创建了一个sphinx文件夹里面放入如图所示的两个PHP文件:

Ses.php里面的内容如图:

<?php

header("content-type:text/html;charset=utf8");

include'./sphinxapi.php'; //包含sphinxapi类

$sphinx=newSphinxClient(); //实例化

$sphinx->SetServer('127.0.0.1',9312);//链接

$res=$sphinx->Query("所查字段","*");//查询的字段第二参数是你配置文件里面写得规则这里是*就会匹配所有规则

print_r($res);//打印数据

?>

2.YII框架操作:

首先我们把生成的索引文件api中的sphinxapi.php放在自己yii框架中的vendor/composer。

然后在进入vendor/autoload.php文件(如图:)

然后在我们控制器下开始操作(如图)

这样我们的yii框架简单操作sphinx就完成了。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。