<script type="text/javascript">document.domain = "iteye.com";</script>
coreseek
是在Sphinx
基础上开发的全文检索软件,
具体介绍详见文尾
附录
=========================================================
一、
安装环境及介绍
1.
前提环境
系统环境:centos5
操作用户:root
文中粗体字为需用户输入的命令内容
2.
源码包准备
下载MMSEG
分词源码包
wget
http://www.coreseek.cn/uploads/sources/mmseg3_0b3.tar.gz
下载coreseek
源码包
wget
http://www.coreseek.cn/uploads/sources/csft3_0b4.tar.gz
解压缩源码包
tar -xzvf mmseg3_0b3.tar.gz
tar -xzvf
csft3_0b4.tar.gz
3.
安装环境准备
安装g++
编译环境
yum
install g++
yum
install gcc
yum install make
安装python
开发组件
yum
install python
yum
install python-dev
安装make
yum
install make
4.
编译mmseg
cd mmseg.3.0b3/
./configure
--prefix=/
var
/
eyou
/mmseg
make
make install
5.
编译coreseek
cd csft3_0b4/
./configure
--prefix=/
var
/
eyou
/coreseek --with-python --with-mysql
--with-mmseg-includes=/
var
/
eyou
/mmseg/include/mmseg --with-mmseg-libs=/
var
/
eyou
/mmseg/lib/
make & make
install
此步安装完成后,
将在/
var
/
eyou
/
下生成 coreseek
目录
coreseek
目录中有三个目录分别为bin
、 etc
、var
bin
中 存有sphinx
用到的一些执行文件 包括
indexer
索引建立 search
查询工具 searchd
查询服务器 等
etc
中是配置文件,该目录中
有一个sphinx.conf.
disk
,这个相当于sphinx
的配置例子文件,我们以这个文件为蓝本,重新创建一个空白内容的sphinx.conf
,存放在
etc
下
。
6.
创建dict
目录
创建字典目录:
mkdir
/var/eyou/coreseek/dict/
产生字典步骤:
cd
/root/soft/
mmseg.3.0b3/data
/var/eyou/mmseg/bin/mmseg -u unigram.txt
产生了unigram.txt.uni
,移到相应目录。
cp
unigram.txt.uni /var/eyou/coreseek/dict/uni.lib
创建 /
var
/
eyou
/coreseek/dict/mmseg.ini
内容:
[mmseg]
merge_number_and_ascii=1;
number_and_ascii_joint=-;
compress_space=0;
seperate_number_ascii=1;
#merge_number_and_ascii:
字母和数字连续出现是非切分
#number_and_ascii_joint:
连接数字和字母可用的符号,如'-' '.'
等
#compress_space
:暂时无效
#seperate_number_ascii
:是否拆分数字,如 1988 ->
1/x 9/x 8/x 8/x
7.
php
调用
sphinx api
通过官方API
调用Sphinx
,具体为:
在
coreseek
安装目录有一个API
目录,里面有三个PHP
文件:test.php
,test2.php
和sphinxapi.php
。 sphinxapi.php
是sphinx
调用接口封装文件(这个文件就是官方提供的php
调用API
),test.php
是一个在命令行下执行的查询例子文件,test2.php
是一个生成摘要的 例子文件。
8.
配置
sphinx.conf
具体参见sphinx.conf
的注释说明
9.
启动服务
建立索引
/var/eyou/coreseek/bin/indexer
--config
/var/eyou/coreseek/etc/sphinx.conf
启动 searchd
服务
/var/eyou/coreseek/bin/searchd --config
/var/eyou/coreseek/etc/sphinx.conf
二、
附录
:全文检索----coreseek
1.
全文搜索与数据库搜索的区别
o
专为全文搜索优化,效率更高
由于典型的数据库系统要考虑用户的“增删改查”等多种复杂操作,因此其存取数据的方式需要考察综合考虑各种应用;而全文搜索的数据存取方式只考虑快速读取,相比数据库的查询,要快10
倍或更多。(即使启用了数据库内置的全文搜索功能,这个结论仍成立)。
o
支持复杂的查询表达式
数据库系统的查询,往往只支持“AND
” 或 "OR"
等有限的模式,而全文检索不但支持"AND"
、“OR
”
查询,还支持“NOT
”、“近似”、 “整句”等多种查询方式;同时相比数据库系统,进行在一定范围内查询时也更高效
o
支持按相关度排序
数据库查询出的结果,往往按照数据库内置的排序规则进行排序,往往只能按时间、按点击等有效的排序规则进行;全文搜索除了能够支持数据库的排序规则外,还支持按照结果的相关度排序,这往往会给访问者带来更大的便利。
o
支持中文分词
数据库提供的全文搜索功能往往不支持中文分词(或仅提供二元切分),导致某些短语检索不到或出现大量不相干的数据;中文全文检索系统支持中文分词,进一步过滤了不相干的数据。
2.
自建全文搜索与使用Google
等第三方网站提供的站内全文搜索的区别
o
对网站设备有要求
自建全文搜索往往需要站长有至少一台独立主机,而使用第三方提供的全文搜索对站点的要求低,虚拟主机即可;不过,出现全文搜索需求的站点通常已经有自己的独立主机了。
o
索引更新更及时
由于搜索服务在第三方托管,其往往只能按照一定的规则定期更新索引库(往往是几小时、甚至几天才更新一次索引),您网站上的新出现的内容往往不能及时被搜索到;
使用自建全文搜索,可以保证您网站上新出现的内容可以”立即“被检索到。
o
更适应您的网站
由于中文需要进行分词的特性,导致没有一套通用的词库可以适用于全部网站,要得到优秀的检索结果需要定制一套适用于您网站的词库;
采用第三方的搜索服务,您是无法修改第三方厂商的词库的,而使用自建全文搜索则无此问题。
o
更有利于您网站的数据整合
有些网站不止是论坛,往往还包括内容管理(CMS)
、商城等多种应用,而使用数据库搜索往往需要用户在各个系统中都进行搜索才能找到内容;
第三方的检索无法区别各个系统的不同。而自建的全文搜索可以有效的区分各个数据来源的不同数据,真正做到一次搜索应有尽有,从而改善您网站的访问体验,增加您网站的点击率。
o
避免您的访问者遇到某些尴尬
第三方的搜索结果页面不是您可以控制修改的,有推荐一些可能会使您网站访问者尴尬的搜索短语的可能。而使用自建全文搜索则完全无此问题。
分享到:
相关推荐
centos 6.5安装coreseek,亲测ok coreseek-3.2.14
想把一个老系统迁到CentOS 8下,这个系统用到了coreseek。在CentOS 8下编译总是出错,折腾了好久终于编译通过。 这是我修改过的可以编译的源码包。
说明了基于 XML 的数据源的全文检索工具 Coreseek 在 CentOS 下安装的过程。 OSSEZ
Centos5.5下Qt的安装配置
elasticsearch 全文搜索引擎在centOs8.x环境下 安装配置服务搭建
Centos7下安装MongoDB
centos7.9离线安装PHP环境依赖
用于描述 Coreseek 使用 MySQL 的数据源进行安装的方法。 OSSEZ
VirtualBox安装CentOS5
主要介绍了centos+php+coreseek+sphinx+mysql之一coreseek安装篇的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
CentOS7下安装JDK1.8详细过程
Centos 5 系统安装,安装步骤清晰明了,操作起来方便快捷。。
CentOS7下安装oracle11g具体步骤
centos5 cvs安装,一步一步教程,明了简单。还有用户管理说明。
CentOS 5.5搭建PHP环境安装笔记
centos7.0安装mysql centos7.0安装mysql centos7.0安装mysql
Centos 下 netflow安装配置--安装nfsen
CentOs下安装PHP扩展 curl 务器运行一段时间后,可能突然会需求添加某个扩展,如curl、pdo、xmlrpc等,这就需要在不重新编译Linux PHP的情况下独立添加扩展。
详细记录了在centos7下如何用安装python3和ipython3的过程,简单实用,傻瓜式操作,期间遇到的所有问题都给出明确的解决办法。复制代码,黏贴运行即可。为新手在centos7环境下配置python学习环境提供帮助。
目录 Linux的历史和现状 Linux系统的特点和组成 Linux的内核版本与发行版本 RedHat、CentOS与Fedora CentOS操作系统的安装 ...SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNI