<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,一个基于Sphinx搜索引擎的全文检索引擎。CoreSeek以其高度可定制性、高效性能和丰富的功能特性,广泛应用于各类数据检索场景。 一、CoreSeek...
Coreseek 4.1 是一款基于Sphinx技术的开源全文搜索引擎,它提供了高效、可扩展的搜索解决方案。在将一个老系统迁移至CentOS 8的过程中,由于操作系统环境的变化,原有的编译流程可能不再适用。这里我们将详细探讨...
- **语言配置检查**:在安装 Coreseek 之前,需要检查当前系统的语言配置是否符合要求,确保后续安装过程顺利。 #### 四、安装 mmseg 分词工具 - **mmseg 分词工具**:mmseg 是一种中文分词工具,用于提高搜索结果...
在安装 Coreseek 之前,确保 CentOS 操作系统已经安装了必要的编译环境,例如 `gcc` 和其他相关工具。这些工具是编译安装过程中必需的。 **具体步骤:** 1. **检查环境:** - 首先,通过命令行确认 CentOS 是否已...
在安装 fontconfig-2.8.0.tar.gz 之前,需要将 windows 下使用 QTCreator 开发的程序运行在 CentOS 下的 QTCreator 上。在编译的过程中出现了如下错误: …undefined reference to `FcFreeTypeQueryFace'… ...
Centos7下安装MongoDB是指在Centos7操作系统中安装和配置MongoDB数据库的过程。MongoDB是一个基于分布式文件存储的NoSQL数据库,由C++语言编写,运行稳定,性能高旨在为 WEB 应用提供可扩展的高性能数据存储解决方案...
在描述中提到了一个博文链接,虽然具体内容没有给出,但可以推测博主“sinykk”分享了他在安装和配置Sphinx以及与Coreseek集成过程中的经验。由于没有实际的博文内容,我将基于一般流程来解释Sphinx的安装和使用。 ...
### Centos环境下安装curl #### 一、概述 在Linux环境下安装配置curl是非常常见的操作,尤其是在...通过以上步骤,即可在Centos环境下成功安装并配置curl,使得PHP能够支持curl功能,为后续的开发工作提供了便利。
Sphinx是一个开源的全文搜索引擎,其特点是搜索速度快,支持分布式搜索,可以与MySQL数据库配合使用,实现高效的数据检索。CoreSeek相当于Sphinx的中文版本,它加入了中文分词等对中文支持更好的特性。 **CentOS:*...
elasticsearch 全文搜索引擎在centOs8.x环境下 安装配置服务搭建
在Linux系统中,尤其是CentOS 7.9这样的企业级操作系统上,离线安装PHP环境依赖是一项关键任务,尤其在没有互联网连接或者网络环境受限的情况下。这篇文章将详细讲解如何在CentOS 7.9上离线安装PHP环境,以及所需的...
在安装 CentOS 5 时,我们可以选择图形界面安装或字符界面安装。在图形界面安装中,我们可以选择语言、键盘布局和时间区域,然后点击 "下一步"。在硬盘分区设置中,我们可以选择自动分区或手动分区。如果选择手动...
CoreSeek是中国的一款开源全文搜索引擎系统,它基于Sphinx搜索引擎进行了二次开发,增加了对中文的支持,提供了更方便的中文分词接口。在这个“coreseek-4.1.tar.gz”压缩包中,你找到了Linux版本的CoreSeek 4.1-...
为了能在CentOS 7上高效地运行LAMMPS,特别是利用其并行计算能力,本文将详细介绍如何在该操作系统环境下安装LAMMPS及其依赖库FFTW和MPICH。 #### 安装准备 在开始之前,请确保已经拥有CentOS 7系统的root权限或...
本篇将详细讲解如何在CentOS5这个古老的Linux发行版上安装fctix输入法,这是一种流行的开源输入法框架,支持多种输入法,如拼音、五笔等。 首先,让我们了解fctix。fctix(Fast Common Input Method Interface ...
本文将详细介绍如何在CentOS系统上安装中文语言支持包,并确保系统的语言环境能够正常显示中文。 #### 一、准备工作 在开始之前,请确保您的CentOS系统已通过网络连接到互联网,并且`yum`源配置正确无误。如果尚未...
- 修改虚拟机设置,移除不需要的硬件设备如USB控制器(USB Controller)和声卡(Sound Card),因为它们在安装CentOS时通常不会被使用。 - 配置网络适配器,选择“Host-only”模式,这种模式下虚拟机仅能与宿主机...
【标题】:“CentOS迅雷下载地址及安装图解” 【正文】: CentOS是一款基于Linux的开源操作系统,它以Red Hat Enterprise Linux (RHEL)为基础,提供了稳定、安全且免费的企业级计算环境。在本资源中,我们将涵盖从...
在安装 Centos 7.6 之前,我们需要创建一个虚拟机。我们使用 VMware 15.5 作为虚拟机软件,并且选择 Window 10 64 位作为主机系统。在创建虚拟机时,我们需要选择虚拟机的存放位置和虚拟机名称,然后选择网络类型,...