全文检索引擎 sphinx-coreseek中文索引
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编码;
- # 下载coreseek:coreseek 3.2.
- $ wget http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz
- $ tar xzvf coreseek-3.2..tar.gz
- $ cd coreseek-3.2.
- #前提,需提前安装操作系统基础开发库及mysql依赖库以支持mysql数据源和xml数据源
- #安装mmseg
- $ cd mmseg-3.2.
- $ ./bootstrap #输出的warning信息可以忽略,如果出现error则需要解决
- $ ./configure --prefix=/usr/local/mmseg3
- $ make && make install
- $ cd ..
- #安装coreseek
- $ cd csft-3.2. 或者 cd csft-4.0. 或者 cd csft-4.1
- $ sh buildconf.sh #输出的warning信息可以忽略,如果出现error则需要解决
- ./configure --prefix=/usr/local/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/usr/local/mmseg3/include/mmseg/ --with-mmseg-libs=/usr/local/mmseg3/lib/ --with-mysql
- #./configure --prefix=/coreseek/sphinx/coreseek --without-unixodbc --with-mmseg --with-mmseg-includes=/coreseek/sphinx/mmseg3/include/mmseg/ --with-mmseg-libs=/coreseek/sphinx/mmseg3/lib/ --with-mysql
- ##如果提示mysql问题,可以查看MySQL数据源安装说明
- $ make && make install
- $ cd ..
- ,测式coreseek
- #测试mmseg分词,coreseek搜索(需要预先设置好字符集为zh_CN.UTF-,确保正确显示中文)
- $ cd testpack
- $ cat var/test/test.xml #此时应该正确显示中文
- $ /usr/local/mmseg3/bin/mmseg -d /usr/local/mmseg3/etc var/test/test.xml
- $ /usr/local/coreseek/bin/indexer -c etc/csft.conf --all
- $ /usr/local/coreseek/bin/search -c etc/csft.conf 网络搜索
- cd ../testpack
- $ /usr/local/coreseek/bin/indexer -c etc/csft.conf
- #以下为正常情况下的提示信息:
- Coreseek Fulltext 3.2 [ Sphinx 0.9.-release (r2117)]
- Copyright (c) -,
- Beijing Choice Software Technologies Inc (http://www.coreseek.com)
- using config file 'etc/csft.conf'...
- total reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
- total writes, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
- $ /usr/local/coreseek/bin/search -c etc/csft.conf
- #以下为正常测试搜索时的提示信息:(csft-.0版类似)
- Coreseek Fulltext 3.2 [ Sphinx 0.9.-release (r2117)]
- Copyright (c) -,
- Beijing Choice Software Technologies Inc (http://www.coreseek.com)
- using config file 'etc/csft.conf'...
- index 'xml': query '': returned matches of total in 0.093 sec
- displaying matches:
- . document=, weight=, published=Thu Apr :: , author_id=
- . document=, weight=, published=Thu Apr :: , author_id=
- . document=, weight=, published=Thu Apr :: , author_id=
- words:
出现ERROR:
using config file '/usr/local/coreseek/etc/video.conf'...
indexing index 'video'...
ERROR: source 's_video': unknown type 'MySQL'; skipping.
ERROR: index 'video': failed to configure some of the sources, will not index.
total 0 reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
total 0 writes, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg
安装mysql支持
yum install mysql-devel libxml2-devel expat-devel
重新编译
编译错误一
make[2]: *** [indexer] Error 1
make[2]: Leaving directory `/www/tmp/csft-3.1/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/www/tmp/csft-3.1/src'
make: *** [all-recursive] Error 1
In the meantime I've change the configuration file and set
#define USE_LIBICONV 0 in line 8179.
修改configure 文件把 #define USE_LIBICONV 0 最后的数值由1改为0
重新编译。
全文检索引擎 sphinx-coreseek中文索引的更多相关文章
- 全文检索引擎sphinx 与 Elasticsearch 索引速度对比
sphinx的特色之一是建立索引速度快,最近转投Elasticsearch后,一直想做个对比,网上资料常见说法是10倍的差距. 测试环境 硬件:单核,2G内存的E5-2630 虚拟机 操作系统:Cen ...
- 【Lucene】Apache Lucene全文检索引擎架构之中文分词和高亮显示4
前面总结的都是使用Lucene的标准分词器,这是针对英文的,但是中文的话就不顶用了,因为中文的语汇与英文是不同的,所以一般我们开发的时候,有中文的话肯定要使用中文分词了,这一篇博文主要介绍一下如何使用 ...
- 【Lucene】Apache Lucene全文检索引擎架构之构建索引2
上一篇博文中已经对全文检索有了一定的了解,这篇文章主要来总结一下全文检索的第一步:构建索引.其实上一篇博文中的示例程序已经对构建索引写了一段程序了,而且那个程序还是挺完善的.不过从知识点的完整性来考虑 ...
- coreseek中文搜索
coreseek的安装和使用 准备软件包 coreseek-3.2.14.tar.gz 其他汁源 coreseek中文索引-示例文件.zip sphinx配置文件详解.txt 1.安装组件 yum - ...
- sphinx中文版Coreseek中文检索引擎安装和使用方法(Linux)
sphinx中文版Coreseek中文检索引擎安装和使用方法(Linux) 众所周知,在MYSQL数据库中,如果你在百万级别数据库中使用 like 的话那你一定在那骂娘,coreseek是一个 ...
- sphinx全文检索引擎
今天刚刚学习了一下,就直接分享上去,有些还没有接触,如果有问题请指正,谢谢 sphinx是什么? Sphinx是一个全文检索引擎.主要为其他应用提供高速.低空间占用.高结果 相关度的全文搜索功能. S ...
- Sphinx + Coreseek 实现中文分词搜索
Sphinx + Coreseek 实现中文分词搜索 Sphinx Coreseek 实现中文分词搜索 全文检索 1 全文检索 vs 数据库 2 中文检索 vs 汉化检索 3 自建全文搜索与使用Goo ...
- centos7下搭建sphinx全文检索引擎
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用 程序更容易实现专业化的全文检索.Sphinx特别为一些 ...
- Linux下PHP+MySQL+CoreSeek中文检索引擎配置
说明: 操作系统:CentOS 5.X 服务器IP地址:192.168.21.127 Web环境:Nginx+PHP+MySQL 站点根目录:/usr/local/nginx/html 目的:安装co ...
随机推荐
- 加密算法IV的作用
使用随机数产生的初始化向量才能达到语义安全(散列函数与消息验证码也有相同要求),并让攻击者难以对同一把密钥的密文进行破解 初始化向量的值依密码算法而不同.最基本的要求是“唯一性”,也就是说同一把密钥不 ...
- DOS下常用命令
0,想进入某个驱动器,直接输入盘符即可.如:“d:”1,CD--进入指定目录 2,cls--清除显示器屏幕上的内容,使DOS提示符到屏幕左上角. 3,time--显示和设置DOS的系统时间 4,dir ...
- js中构造函数和普通函数的区别
this简介: this永远指向当前正在被执行的函数或方法的owner.例如: 1 2 3 4 5 function test(){ console.log(this); } test(); // ...
- ZT 设计模式六大原则(5):迪米特法则
转贴: 设计模式六大原则(5):迪米特法则 原帖子的后续评论里面很多值得仔细去看 切记!像21楼 21楼 chenshufei2 2012-09-23 12:47发表 [回复] 上个例子,就是方法 ...
- 基于SAP Kyma的订单编排增强介绍
尽管有一万个舍不得,2018年还是无可挽回地离我们远去了. 唯有SAP成都研究院的同事和我去年在网络上留下的这些痕迹,能证明2018年我们曾经很认真地去度过每一天: SAP成都研究院2018年总共87 ...
- phonegap 捕获图片,音频,视屏 api capture
一. capture Api 简单介绍 capture 对象用于获取视屏,音频和图像,它是一个全局对象,通过 navigator.device.capture 来访问 方法: capture.capt ...
- MATLAB入门学习(一)
开始MATLAB入门啦,,,首先感谢xyy大神的帮助!然后我们开始学习吧!<( ̄︶ ̄)↗[GO!] 工作空间窗口:保存了你定义的常量,变量之类的,可以保存也可以被调用. 保存的话会生成一个mat ...
- ubuntu环境安装谷歌驱动命令
1.sudo apt-get install chromium-chromedriver. 2.直接下载:http://chromedriver.storage.googleapis.com/inde ...
- JavaScript小游戏--2048(PC端)
1.初始化棋局 $(document).ready(function() { prepare_for_mobile(); //适配移动端 new_game(); }); 2.开始新游戏 functio ...
- PowerShell交互下的热键