sphinx的简单使用及yii中应用
来源:互联网 发布:linux daemontools 编辑:程序博客网 时间:2024/06/06 05:07
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盘操作。
2>由于coreseek是开源产品,所以在windows下面不需要安装,我们直接进入即可。
3>进入后我们看到如图所示文件:
4>进入etc目录打开csft_mysql.conf文件,修改文件:
图文中讲的已经非常详细了,这里我说一下红线标记的地方region_id都要换成你表中的主键id。
5>使用cmd命令行进入该目录如图:
.\bin\indexer.exe -c .\etc\csft_mysql.conf --all
输入完毕之后出现如下图所示你的索引就创建好啦!(如图):
.\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);//打印数据
?>
首先我们把生成的索引文件api中的sphinxapi.php放在自己yii框架中的vendor/composer。
然后在进入vendor/autoload.php文件(如图:)
然后在我们控制器下开始操作(如图)
- sphinx的简单使用及yii中应用
- Yii框架中使用sphinx搜索及关键字标红
- yii 里sphinx使用
- yii 框架 的sphinx类引入 使用 及 关键字标红
- yii中cookie的简单使用
- Sphinx的安装和yii框架的使用
- 简单的Yii框架应用
- yii框架的简单应用
- Sphinx 简单应用
- java中随机函数的使用及简单应用
- yii sphinx
- Sphinx以及coreseek的安装及使用
- Sphinx(斯芬克斯的安装及使用)
- Sphinx(斯芬克斯的安装及使用)
- yii框架中sphinx单条件搜索
- yii中yii-bootstrap的使用
- Yii 2.0邮箱类的简单应用
- coreseek(sphinx)的简单应用以及在LAMP中的注意事项
- 《VR入门系列教程》之14---面向大众的Unity3D
- 别以为真懂Openstack: 虚拟机创建的50个步骤和100个知识点(5)
- 并查集的概念与实现
- Linux下文件的压缩与解压缩
- 《VR入门系列教程》之15---配置Oculus的开发环境
- sphinx的简单使用及yii中应用
- android 3
- 运行maven项目的步骤
- 《VR入门系列教程》之16---第一个OculusVR应用
- POJ 3592 Instantaneous Transference强连通加缩点后求最长路
- POJ 2115 C Looooops (模线性方程)
- 2016多校训练Contest8: 1008 Rikka with Sequence hdu5828
- 《VR入门系列教程》之17---发布第一个应用
- hdu 1035Robot Motion 搜索