- 浏览: 258347 次
- 性别:
- 来自: 苏州
文章分类
- 全部博客 (289)
- java (72)
- oracle (3)
- mysql (5)
- spring (28)
- hibernate (2)
- osgi (0)
- linux (2)
- ExtJs (1)
- jvm (0)
- mybatis (7)
- 分布式 (11)
- MINA (6)
- apache+tomcat (13)
- js+htm (7)
- android (44)
- http (1)
- hbase+hdoop (0)
- memcache (13)
- search (27)
- 部署及性能 (12)
- mongoDB (2)
- 多线程 (12)
- 安全管理验证 (9)
- struts (1)
- webservice (0)
- easyUI (1)
- spring security (16)
- pattern (6)
- 算法 (2)
最新评论
-
lzh8189146:
CommonsHttpSolrServer这个类,现在是不是没 ...
CommonsHttpSolrServer -
xiaochanzi:
我按照你的方法试了下,tomcat6可以发布,但是访问任何网页 ...
基于内嵌Tomcat的应用开发 -
phoneeye:
麻烦你,如果是抄来的文章,请给出来源。谢谢
ant 两则技巧 -
neverforget:
转载不注明出处
Spring Security3.1登陆验证 替换 usernamepasswordfilter -
liang1022:
若不使用eclipse ,如何在命令行下 运行服务端程序 ?
WebService CXF学习(入门篇2):HelloWorld
1.Lucence
2.sphinx
3.Apache Solr
一、简介:
Coreseek是基于sphinx更完善支持中文搜索功能。故其原理同sphinx,如下:
1、sphinx的两个主要进程indexer和searchd。
indexer任务是从数据库(或者其他的数据源)收集原始的数据,然后建立相应的索引。
searchd则是通过读取indexer建立的索引来响应客户端的请求。
2、sphinx工作前提:配置文件修改
a、需要让其获取数据源从何而来(即:配置source信息)
b、建立索引,对数据源的哪部分数据进行索引等详细信息(即:indexer的所有信息)
c、执行indexer生产索引,最用才启用searchd服务
3、应用主要是通过api接口实现,支持php、perl、python及ruby等语言调用。
二、系统环境:
最好使用中文环境utf8
locale查看
修改/etc/profile 文件添加 export LC_ALL=zh.CN-UTF8
确认autoconf、automake安装可执行下
autoconf
automake
三、软件编译:
1 |
wget -c http://www.coreseek.cn/uploads/csft/3.2/coreseek-3.2.13. tar .gz
|
2 |
tar zxvf coreseek-3.2.13. tar .gz
|
3 |
cd coreseek-3.2.13/mmseg-3.2.13
|
4 |
./configure --prefix=/usr/ local /mmseg
|
5 |
make && make install
|
##中文分词测试,如果显示不正常,请检查当前环境下的locale和UTF-8中文字符显示设置
1 |
/usr/ local /mmseg/bin/mmseg -d /usr/ local /mmseg/etc src/t1.txt
|
根据需要编译:
1 |
#只支持xml源数据源 |
2 |
./configure --prefix=/usr/ local /coreseek --without-python --without-mysql --with-mmseg --with-mmseg-includes=/usr/ local /mmseg/include/mmseg/ --with-mmseg-libs=/usr/ local /mmseg/lib/
|
3 |
make && make install
|
4 |
#执行测试 |
5 |
/usr/ local /coreseek/bin/indexer -c /usr/ local /coreseek/etc/sphinx-min.conf.dist
|
6 |
#支持Mysql数据源 |
7 |
./configure --prefix=/usr/ local /coreseek --with-mmseg=/usr/ local /mmseg --with-mmseg-includes=/usr/ local /mmseg/include/mmseg/ --with-mmseg-libs=/usr/ local /mmseg/lib/ --with-mysql=/usr/ local /mysql --with-mysql-includes=/usr/ local /mysql/include/mysql/ --with-mysql-libs=/usr/ local /mysql/lib/mysql/
|
8 |
make && make install
|
可能遇到问题处理:
1、提示config.status: error: cannot find input file: src/Makefile.in
执行以下命令
1 |
aclocal |
2 |
libtoolize --force |
3 |
automake --add-missing |
4 |
autoconf |
5 |
autoheader |
6 |
make clean
|
注:个人只运行下autoconf及automake即通过
2、Linux环境下,如遇到pthread问题,请先直接执行以下指令在进行configure前:
1 |
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/ local /lib
|
2 |
export LD_LIBRARY_PATH
|
3、如果出现undefined reference to `libiconv’的类似错误,可以按照如下方法处理:
方法一:(Linux使用)
直接执行:export LIBS=”-liconv”
然后再次configure后,进行编译安装
方法二:
首先configure,然后vim src/makefile
在其中搜索lexpat,在其后加上 -liconv
修改后该行应该为:-lexpat -liconv -L/usr/local/lib
然后再次make
方法三:
#首先configure,然后vim config/config.h
在其中搜索USE_LIBICONV,将其后的1修改为0
然后再次make
四、文件配置:(/usr/local/coreseek/etc/csft.conf)
a、数据源(这里以mysql数据为例 也可支持xml方式)
01 |
source sphinx
|
02 |
{ |
03 |
sql_host = 192.168.1.100 # mysql服务器ip
|
04 |
sql_user = sphinx # mysql用户名
|
05 |
sql_pass = sphinx # mysql密码
|
06 |
sql_db = sphinx # mysql数据库名
|
07 |
type = mysql # 数据源类型
|
08 |
sql_port= 3306 # optional, default is 3306
|
09 |
sql_query_pre= SET SESSION query_cache_type=OFF |
10 |
sql_query_pre= SET NAMES utf8; |
11 |
sql_query = SELECT * FROM documents WHERE id =$ id # 具体数据列
|
12 |
} |
b、索引任务:
01 |
index sphinx_test |
02 |
{ |
03 |
source = sphinx
|
04 |
path = /usr/ local /coreseek/var/data/sphinx
|
05 |
docinfo = extern |
06 |
mlock = 0 |
07 |
morphology = none |
08 |
stopwords = |
09 |
min_word_len = 1 |
10 |
charset_type = utf-8 |
11 |
# 简单分词,只支持0和1,如果要搜索中文,请指定为1 |
12 |
ngram_len = 1 |
13 |
# 需要分词的字符,如果要搜索中文,去掉前面的注释 |
14 |
min_prefix_len = 0 |
15 |
min_infix_len = 1 |
16 |
} |
c、搜索服务配置(基本保持默认即可)
01 |
searchd |
02 |
{ |
03 |
port = 9312 |
04 |
log = /usr/ local /coreseek/var/log/searchd.log
|
05 |
query_log = /usr/ local /coreseek/var/log/query.log
|
06 |
read_timeout = 5 |
07 |
max_children = 30 |
08 |
pid_file = /usr/ local /coreseek/var/log/searchd.pid
|
09 |
max_matches = 3000 |
10 |
seamless_rotate = 1 |
11 |
preopen_indexes = 0 |
12 |
unlink_old = 1 |
13 |
} |
五、服务启动:
执行indexer生成索引:
1 |
/usr/ local /coreseek/bin/indexer --rotate sphinx_test #只对sphinx_test索引任务
|
2 |
或 |
3 |
/usr/ local /coreseek/bin/indexer --all --rotate # 针对所有索引任务
|
可能会出现数据库连接失败错误:
1 |
/usr/ local /coreseek/bin/indexer sphinx_test --rotate
|
2 |
/usr/ local /coreseek/bin/indexer: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file : No such file or directory
|
3 |
#先确认下libmysqlclient.so.15是否存在 |
4 |
ldd /usr/ local /coreseek/bin/indexer
|
5 |
libmysqlclient.so.15 => not found |
解决措施:
1 |
vim /etc/ld.so.conf |
2 |
/usr/ local /mysql/lib/mysql/ #最后一行添加
|
3 |
[root@localhost etc] # ldconfig
|
运行搜索服务searchd:
1 |
/usr/ local /coreseek/bin/searchd &
|
六、应用:
API接口程序调用
发表评论
-
提高nutch爬取效率
2012-06-08 12:47 945提高nutch爬取效率 分类 ... -
CommonsHttpSolrServer
2012-03-28 09:31 2082CommonsHttpSolrServer ... -
利用SOLR搭建企业搜索平台 之十(数据库数据导入到solr)
2012-03-28 09:31 746利用SOLR搭建企业搜索平台 之十(数据库数据导 ... -
利用SOLR搭建企业搜索平台 之九(solr的查询语法)
2012-03-28 09:31 837利用SOLR搭建企业搜索平台 之九(solr的查 ... -
利用SOLR搭建企业搜索平台 之八(solr 实现去掉重复的搜索结果,打SOLR-236_collapsing.patch补丁)
2012-03-28 09:31 982引用Bory.Chanhttp://blog.chenlb.c ... -
利用SOLR搭建企业搜索平台 之五(solrj)
2012-03-27 14:59 859利用SOLR搭建企业搜索平台 之五(solrj) ... -
Solr solrconfig.xml的翻译
2012-03-13 08:23 896Solr solrconfig.xml的翻译 ... -
使用Apache Solr对数据库建立索引
2012-03-13 08:23 861使用Apache Solr对数据库建立索引 ( ... -
解决DataImportHandler从数据库导入大量数据而内存溢出的问题
2012-03-13 08:23 931解决DataImportHandler从数据库导入大 ... -
Solr 创建索引的原理 源码分析
2012-03-13 08:24 1161Solr 创建索引的原理 源码分析 (2011 ... -
Solr Replication (复制) 索引和文件的工作机制
2012-03-13 08:24 811Solr Replication (复制) 索引和文 ... -
Solr 查询中fq参数的解析原理
2012-03-14 08:13 820Solr 查询中fq参数的解析原理 (2011- ... -
Solr 分词器(analyzer)是怎么传到Luence的
2012-03-14 08:13 1091Solr 分词器(analyzer)是怎么传到Lue ... -
SOLR的分布式部署
2012-03-14 08:14 1032转载:http://blog.sina.com.cn/s/bl ... -
Solr 删除数据的几种方式
2012-02-22 08:40 1005转载:Solr 删除数据的几种方式 发表于:2010 ... -
Solr Data Import 快速入门
2012-02-26 12:12 829转载:Solr Data Import 快速入门 发 ... -
使用 solr php 的输出
2012-02-22 08:41 850转载:使用 solr php 的输出 发表于:200 ... -
Solr Multicore 结合 Solr Distributed Searching 切分大索引来搜索
2012-02-26 12:13 790Solr Multicore 结合 Solr Dist ... -
Solr Multicore 试用小记
2012-02-26 12:13 752Solr Multicore 试用小记 转载: ... -
Solr1.4.0源码分析二 Solr分布式搜索中URL的正确用法和原理
2012-02-26 12:13 986Solr1.4.0源码分析二 Solr分布式搜索 ...
相关推荐
Sphinx是一个高性能、开源的全文检索引擎,专为配合SQL数据库而设计,如MySQL和PostgreSQL,用于实现高效且专业的全文搜索功能。它的核心优势在于能够提供比数据库原生搜索更强大的搜索性能,并且易于集成到各种使用...
Sphinx全文搜索引擎是一款高效、可定制的开源全文检索引擎,主要设计用于网站后台提供快速、准确的全文搜索功能。它最初由俄罗斯开发者Andrew Aksyonoff开发,现在已经成为许多大型网站和应用程序的重要组成部分,...
数据库搜索引擎Sphinx是一款高效、可定制且功能丰富的全文搜索引擎,主要设计用于Web应用,以便快速地从大量数据中检索相关信息。Sphinx的核心特性包括实时索引、近实时搜索以及高度可扩展性,使得它在处理大数据量...
标题 "PHP搜索引擎Sphinx使用教程.zip" 提供的是关于如何在PHP环境中利用Sphinx搜索引擎进行全文检索的信息。Sphinx是一个高效、开源的全文搜索引擎,它为多种编程语言提供了API接口,包括PHP,使得开发者能够方便地...
PHPSou搜索引擎是一款基于PHP开发的开源搜索引擎,其核心特色在于与Sphinx搜索引擎的深度整合,为用户提供高效、精准的全文检索功能。在v3.1.1版本中,开发者对软件进行了多项关键性的修复和完善,旨在提升系统的...
1. Sphinx搜索引擎介绍: Sphinx是一个开源的全文搜索引擎,采用GPLv2许可证发布,专门为数据库全文检索提供解决方案。它具有快速建立索引、高性能搜索和处理海量数据的能力。Sphinx支持多种检索模式,比如布尔检索...
Sphinx是一款高性能的全文搜索引擎,以其快速、高效的索引能力和实时性著称。它支持多种数据源,包括MySQL、PostgreSQL等,可以实现对大量数据的实时搜索。Sphinx的API简单易用,与`PhpSou`的整合,使得开发者能够更...
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,...
Sphinx是一款开源的全文搜索引擎,特别适用于需要高效、精确全文搜索功能的应用程序。它由俄罗斯开发者Andrew Aksyonoff创建,最初是为了解决数据库的全文检索问题而设计的。Sphinx以其快速、准确和可扩展性而闻名,...
支持Mysql全文搜索,支持PHP开发。 新增如下特性: 修正 2.5.x 系列searchd可能崩溃的Bug 改进 高亮的算法,支持词权重自定义 改进 切分算法,支持必须出现的关键词(仅在简单查询模式下) 本版本为Beta版,...
Sphinx-2.2.11是一个开源的全文搜索引擎版本,它被广泛用于中大型网站的搜索功能实现。Sphinx提供了一个PHP扩展,以便更好地与PHP语言集成,方便开发人员使用。 安装Sphinx:首先,需要下载Sphinx-2.2.11的源代码包...
1、搜索引擎架构图(基于PHP+MySQL+Sphinx): 3 2、搜索引擎架构设计思路: 3 ⑴、调用方式最简化: 3 ⑵、创建索引、查询速度快: 3 ⑶、按服务类型进行分离: 4 ⑷、“主索引+增量索引”更新方式: 4 ⑸、“Ext3...
标题 "基于PHP的Sou搜索引擎(整合sphinx)" 暗示了这个项目是关于使用PHP语言构建一个搜索引擎,并且利用了Sphinx这个全文搜索引擎技术。Sphinx是一个高性能、可配置的全文检索引擎,广泛用于网站搜索和数据分析。...
PhpSou搜索引擎程序新增搜索无数据自动调用百度数据仿百度搜索引擎,仿谷歌搜索引擎软件蜘蛛组件包括三大功能模块:链接采集、网页分析、无效网页扫描;自动识别GB2312、BIG5、UTF-8、Unicode等网页编码;文件类型证...
概述:本资源旨在介绍搭建Sphinx+MySQL5.1x+SphinxSE+mmseg中文分词搜索引擎架构的过程,涵盖了Sphinx的基本概念、特性、安装和配置 MySQL+SphinxSE存储引擎、mmseg中文分词搜索引擎架构的搭建过程。 一、Sphinx...
Sphinx 是一个高效、可扩展的全文搜索引擎库,特别适合于作为嵌入式解决方案使用。它由 C++ 编写,提供了丰富的功能和高度灵活性,允许开发者将其集成到自己的应用程序中,实现快速且精准的全文搜索功能。在 `sphinx...
这里的Sphinx指的是文档生成工具而不是全文搜索引擎。全英文。" 提示我们这里讨论的是一个专门用于生成和管理文档的工具,名为Sphinx,版本为1.2.1。这个工具并不是一个搜索引擎,而是一个用于自动化生成编程文档的...