公司又要改版了,而且这次改版伤筋动骨呀。整体平台从DZ 专程 PW。 而且增加了很多WEB2.0元素,内容更丰富了,走向消费型门户的开始。
全文搜索要独立出来,打算使用php + sphinx 来实现。在内部服务器搭建一个sphinx 开发环境,才能开发呀。花了少少时间测试成功了
小插曲: 在编译安装 sphinx 的时候出现很多中文乱码,最后抛出错误卡住了。 我去到官方直接下载一个 rpm 包,安装就很爽。。。具体错误不想研究了。忙开发呢~~
安装两个包。一个是 mmseg 这个是生成中文字典的程序 一个是 csft 也就是中国版的sphinx
rpm -ivh 安装完以后。很顺利~~不到半分钟就装完了。。。
偷懒,中文字典库,我直接去 csft 官方下载了。挺好的想得很周到。。。
unigram.txt uni.lib
unigram.txt 字典文本,可以在里面添加你自己的关键字
然后使用
mmseg -u unigram.txt 生成字典文件:unigram.txt.uni 然后重命名一下 uni.lib 这个就是sphinx 认识的字典了。
放哪里? 放你在 sphinx.conf 里面配置的字典路径里面,等会说到
然后基本就差不多了
在看下sphinx 几个实用的程序
[root@beihai365 /]# csft-
csft-indexer csft-search csft-searchd
csft-indexer 是生成全文搜索索引的 程序
csft-search 是测试搜索是否生效用的,也很好用,不如我还没用客户端脚本开发,就可以用这个来查看全文搜索是否成功
csft-searchd 这个就是 sphinx 搜索的守护程序了。 启动以后,就可以用脚本 php python 等,开查询了。
就那么简单~~
在看下关键的两部分东西
sphinx.conf 配置文件
再看一下 测试客户端代码
“名卡”这个关键字是我自己手动在字典里面添加的。看是否能真的搜到
完全没问题。搜索出来了。
几个关键的操作
[root@beihai365 /]# csft-searchd --stop 停止搜索守护
[root@beihai365 /]# csft-indexer --all 针对所有节点生成索引。你也可以针对某个节点生成索引比如:csft-indexer xx
[root@beihai365 /]# csft-search App 搜索关键字 App 。 不过看下面信息没有搜到和没有命中任何的文档。
Coreseek Full Text Server 3.1
Copyright (c) 2006-2008 coreseek.com
using config file './csft.conf'...
1,
pt:1, 1; index 'tmsgsindex': query 'App ': returned 0 matches of 0 total in 0.017 sec
words:
1. 'app': 0 documents, 0 hits
当大家在运行这些命令的时候发现,需要你自己手动的置顶 --configsphinx.conf 配置文件的路径。。很不方便。。
所以我干脆 ln -s 一个在 ./ 。这样不用每次都去敲入 --config 。太麻烦了
以上知识。。只是基本的测试了一下sphinx 搜索。还有很多选项和功能。分区搜索等。下次再分享了。
分享到:
相关推荐
Sphinx全文搜索引擎是一款高效、可定制的开源全文检索引擎,主要设计用于网站后台提供快速、准确的全文搜索功能。它最初由俄罗斯开发者Andrew Aksyonoff开发,现在已经成为许多大型网站和应用程序的重要组成部分,...
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,...
4. 创建和更新索引:运行`rake ts:configure`来生成配置文件,`rake ts:index`创建索引,`rake ts:start`启动Sphinx搜索守护进程。 5. 在控制器和视图中使用:通过 Thinking Sphinx 提供的搜索辅助方法进行查询。 *...
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,...
Sphinx是一个高性能、开源的全文搜索引擎,它为SQL数据库提供了强大的全文索引功能。Sphinx与SQL结合使用,可以显著提升大数据量下的检索效率,尤其适用于需要高效搜索的Web应用和信息检索系统。 1. **Sphinx简介**...
sphinx全文检索引擎
4. **启动Sphinx服务**:启动Sphinx搜索守护进程(`searchd`),使索引生效并接受搜索请求。 5. **集成应用**:在PHP等应用程序中,使用Sphinx提供的API(如`SphinxClient`)进行搜索操作。 在实际应用中,还需要...
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,...
这时,我们可以借助第三方工具如Sphinx来增强MySQL的全文检索能力,实现高效且精准的中文搜索。本文将详细介绍如何使用Sphinx搭建MySQL的中文全文搜索。 首先,Sphinx是一个开源的全文搜索引擎,它的设计目标是提供...
Sphinx是一个基于SQL的全文检索引擎,可以结合MySQL,PostgreSQL做全文搜索,它可以提供比数据库本身更专业的搜索功能,使得应用程序更容易实现专业化的全文检索。Sphinx特别为一些脚本语言设计搜索API接口,如PHP,...
5. **全文检索**:作为Sphinx的扩展,ABlog继承了其强大的全文检索能力,用户可以通过搜索框快速查找相关博客文章,提高信息查找效率。 6. **Markdown和ReStructuredText支持**:ABlog支持Markdown和Sphinx的默认...
Sphinx 是一个高效、可扩展的全文搜索引擎库,特别适合于作为嵌入式解决方案使用。它由 C++ 编写,提供了丰富的功能和高度灵活性,允许开发者将其集成到自己的应用程序中,实现快速且精准的全文搜索功能。在 `sphinx...
数据库搜索引擎Sphinx是一款高效、可定制且功能丰富的全文搜索引擎,主要设计用于Web应用,以便快速地从大量数据中检索相关信息。Sphinx的核心特性包括实时索引、近实时搜索以及高度可扩展性,使得它在处理大数据量...
基 本上看看上面的官方教程和中文使用手册,你应该会安装和使用Sphix全文索引,当然,还有一些细节,需要不断的google和baidu,那为了节省大 家的时间,就出一个完整的Sphinx安装教程和结合PHPWIND程序的使用教程...
Sphinx是一种开源的全文搜索服务器,旨在为大型数据集提供快速且准确的搜索结果。它支持多种数据库,包括MySQL、PostgreSQL等,能够处理海量数据,并提供实时索引更新功能。Sphinx的主要特点包括: 1. **高性能**:...
Sphinx 是一个强大的开源全文搜索引擎,它以性能卓越、相关性高和易于集成著称。在深入了解Sphinx之前,我们先来理解全文搜索的基本概念。全文搜索允许用户输入自然语言查询,然后在文档集合中搜索匹配的内容,而不...
51CTO技术沙龙第19期讲义:Sphinx 全文检索实践指南主讲:李沫南部分主要内容:全文检索 VS 数据库检索SELECT * FROM documents WHERE title like '%test%'CPU 100%'30秒内只能进行一次查询'没有找到记录......
1. **Sphinx搜索引擎**:Sphinx是一款独立的、高性能的全文检索引擎,支持实时索引和千万级数据量的搜索。它的主要特点包括快速的全文索引、准确定位结果、丰富的排序方式以及对多种数据库的支持,如MySQL和...