痛定思痛,终得成功 。。
环境linux的Centos-5
1 介绍
coreseek 给予Sphinx研发的独立搜索引擎, 适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场
coreseek官网: http://www.coreseek.cn/
2 版本 :稳定版3.2 测试版 4.1 最新版5
1)预装软件包,一键安装:
yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel
2) 基础的依赖包 m4、autoconf、automake、libtool 的升级与安装
可以用rpm -qa | grep 包名 ,来查看预装的包的版本和名称,可以用whereis 命令来找到之前的安装包的位置
升级与安装说明:http://www.coreseek.cn/products-install/install_on_macosx/#sysdep
3)安装MySQL,提供MySQL数据源支持
安装的时候出点问题,因为我之前安装过server 和client这两个包,但因为coreseek需要用到Mysql的头文件和库文件,
但我系统中没有,之后安装了devel和share安装包就找到了。
linux各种版本软件查找地址:http://mirrors.sohu.com/
Mysql的安装包和版本:
MySQL-server-community-5.1.73-1.rhel5
MySQL-client-community-5.1.73-1.rhel5
MySQL-devel-community-5.1.73-1.rhel5
MySQL-shared-5.5.34-1.linux2.6
头文件和库文件的处理:http://www.coreseek.cn/products-install/install_on_macosx/#sysdep
但我在安装的时候直接引用Mysql自己的头和库并没有进行拷贝。
4) 安装coreseek
$ curl -O -L http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.14.tar.gz
$ tar xzvf coreseek-3.2.14.tar.gz
$ cd coreseek-3.2.14
#安装mmseg,分词库
$ cd mmseg-3.2.14
$ ./bootstrap
$ ./configure --prefix=/usr/local/mmseg3
$ make && make install
##安装coreseek,需提前安装mysql以支持mysql数据源
$ cd csft-3.2.14
$ sh buildconf.sh
$ ./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 --with-mysql-includes=/opt/local/include/mysql5/mysql --with-mysql-libs=/opt/local/lib/mysql5/mysql
$ make && make install
$ cd ..
--with-mysql-includes=/opt/local/include/mysql5/mysql Mysql头文件所在的目录
--with-mysql-libs=/opt/local/lib/mysql5/mysql Mysql二进制文件所在的目录
5) Mysql为数据源的配置文件配置(主索引和增量索引配置) ,一般主索引每天午夜跑一次,增量索引半分钟或者一分钟跑一次
可以根据安装包下面的etc/sphinx.conf.dist 文件修改
# 主索引+增量索引处理数据 ,主索引一天重建一次,增量索引 几面中创建一次解决近似更新的问题
# 1 documents Source 数据来源
source documents
{
type = mysql
sql_host = 192.168.142.128
sql_user = root
sql_pass = 123456
sql_db = test
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query_pre = REPLACE INTO sph_counter SELECT 1, MAX(id) FROM documents
sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents where id<=( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )
sql_attr_uint = group_id
sql_attr_timestamp = date_added
sql_query_info_pre = SET NAMES utf8
sql_query_info = SELECT * FROM documents WHERE id=$id
}
# 1 web_tags Source delta,增量数据来源
source documentsDelta : documents
{
sql_query_pre = SET NAMES utf8
sql_query = SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content FROM documents where id>( SELECT max_doc_id FROM sph_counter WHERE counter_id=1 )
}
# 1 documentsIndex Index 索引
index documentsIndex
{
source = documents
path = /usr/local/coreseek/var/data/documents1
docinfo = extern
mlock = 0
morphology = none
min_word_len = 1
html_strip = 0
charset_dictpath = /usr/local/mmseg3/etc/
charset_type = zh_cn.utf-8
}
# 1 documents1 Index delta 增量索引
index documents1Delta : documentsIndex
{
source = documentsDelta
path = /usr/local/coreseek/var/data/documents1Delta
}
#---------------------------------------------------------------------------------------------------------------
#全局index定义
indexer
{
mem_limit = 1024M
}
#searchd服务定义
searchd
{
listen = 9312
read_timeout = 50
max_children = 30
max_matches = 1000000
seamless_rotate = 0
preopen_indexes = 0
unlink_old = 1
pid_file = /usr/local/coreseek/var/log/searchd_mysql.pid
log = /usr/local/coreseek/var/log/searchd_mysql.log
query_log = /usr/local/coreseek/var/log/query_mysql.log
}
6)测试部署是否正确 /usr/local/coreseek/bin/indexer -c ../etc/csft.conf
创建整体索引:/usr/local/coreseek/bin/indexer -c ../etc/csft.conf --all --rotate
开启搜索服务: /usr/local/coreseek/bin/searchd -c ../etc/csft.conf
停止搜索服务: /usr/local/coreseek/bin/searchd --stop
重建单个索引:
/usr/local/coreseek/bin/indexer documentsIndex --rotate 重建主索引,自动生效
/usr/local/coreseek/bin/indexer documents1Delta --rotate 重建增量索引,不重启自动生效
查询检索包含关键字“国外”的数据
/usr/local/coreseek/bin/search -c ../etc/csft.conf -a
7)
你需要把启动命令加到开机自启动里
把重建索引命令加到计划任务里每天执行
下面两个任务,第一个增量每分钟跑一次,第二个主索引,每天1点跑一次
linux任务cron使用(http://linux.chinaunix.net/techdoc/beginner/2009/10/25/1141243.shtml)
*/1 * * * * /usr/local/coreseek/bin/delta.sh
* 1 * * * /usr/local/coreseek/bin/main.sh
把下面两个命令分别放到各自的索引sh中即可
/usr/local/coreseek/bin/indexer documentsIndex --rotate 重建主索引,自动生效
/usr/local/coreseek/bin/indexer documents1Delta --rotate 重建增量索引,不重启自动生效
8) 附件中为java调用的程序 和测试数据库
相关推荐
- **搜索服务启动**:安装完成后,启动Sphinx服务,并通过管理工具进行监控和维护。 **4. 应用场景:** Coreseek 全文搜索服务器2.5广泛应用于电商网站、知识库、论坛、新闻站点等需要高效搜索功能的场合。例如,...
- **服务启动**:启动CoreSeek服务,通过Web接口或API进行测试和调用。 5. **应用示例** - **电子商务**:在电商网站中,CoreSeek可以快速定位商品信息,提升用户搜索体验。 - **社区论坛**:论坛中,CoreSeek能...
Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等...
【Coreseek 安装】 Coreseek 是一个专为中国市场设计的全文检索和搜索软件,它基于Sphinx技术,但能够独立运行。...通过以上步骤,Coreseek能够在服务器上成功安装并运行,为企业提供高效、精确的中文搜索服务。
Sphinx是一款强大的、高性能的信息检索服务系统,常用于构建高效的搜索功能。在处理英文文本时,Sphinx表现优秀,但对中文的支持则相对较弱。为了弥补这一不足,开发了如CoreSeek这样的插件,以增强Sphinx对中文的...
1. **核心组件**:CoreSeek的核心组件包括搜索服务、索引构建工具以及相关的管理工具。这些组件协同工作,使得用户能够高效地对大量文本数据进行全文搜索。 2. **源代码结构**: - `csft-x.y.z`:这是CoreSeek的主...
**Coreseek Fulltext Server 源码解析** Coreseek Fulltext Server 是一款开源的全文...此外,对于那些需要自建搜索服务的企业或个人,Coreseek 是一个值得考虑的选择,因为它提供了一个可定制、高效率的解决方案。
《CoreSeek演示与Sphinx搜索引擎详解》 CoreSeek是一款基于Sphinx搜索引擎的开源全文检索解决方案,它在中国的开源社区中有着广泛的应用。本教程将深入探讨2014年12月24日版本的CoreSeek demo,以及与其密切相关的...
1. Sphinx搜索引擎: Sphinx是一款高性能、实时的全文搜索引擎,它为开发者提供了方便的API接口,使其能够轻松集成到各种应用程序中。Sphinx以其高效的数据索引和查询性能著称,特别适合于大数据量的文本搜索场景。...
searchd负责处理客户端的搜索请求,管理索引,并提供实时搜索服务。indexer则是用于创建和更新索引的命令行工具,我们可以使用它来定期更新数据库中的内容,确保搜索结果的时效性。 CoreSeek4.1还支持多种数据源...
在Windows环境下,CoreSeek 4.1版本为开发者提供了在Win32平台上搭建搜索服务的便利。这个压缩包“coreseek-4.1-win32.zip”包含了所有必要的文件,使得用户可以在Windows系统上安装和运行CoreSeek。 **1. CoreSeek...
在这个“coreseek-4.1.tar.gz”压缩包中,你找到了Linux版本的CoreSeek 4.1-beta,这对于在Linux环境下搭建中文搜索服务是非常有价值的。 首先,我们要理解什么是Sphinx。Sphinx是一款高性能、全文检索引擎,常用于...
这个"coreseek-4.1.zip windows版"是Coreseek的Windows平台版本,适用于那些在Windows操作系统上构建搜索服务的用户。由于官方下载站点可能不可用,此压缩包的分享对于需要在Windows环境下使用Coreseek的开发者来说...
Coreseek Sphinx是一款基于全文搜索引擎的开源软件,它提供了高效、精准的搜索功能,常用于大数据量的网站或应用。Sphinx是由俄罗斯的Andrew Aksyonoff开发,而Coreseek是Sphinx在中国的一个分支,增加了对中文的...
CoreSeek/Sphinx是一款强大的开源全文搜索引擎,最初基于俄罗斯数据库公司Altap的数据库搜索引擎技术。它为互联网和企业级应用提供快速、有效的搜索解决方案。Sphinx特别适合处理大量数据和提供实时搜索服务。Sphinx...
1. **中文分词**:Coreseek采用了开源的MMSEG(MaxMatch Multiple Segmentation)算法,能够对中文文本进行精确的分词,提高搜索的准确性。 2. **全文检索**:它提供了快速的全文索引和查询功能,可以处理大量数据...
1. **分布式全文检索**:这是一种能够处理大量数据的搜索方法,它不依赖于单一的服务器或数据库,而是将数据分布在多个服务器上,通过网络进行协同搜索。这种方法适用于大数据环境,有助于优化查询效率和提升数据...