- 浏览: 1017827 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (826)
- 硬件 (8)
- 软件 (24)
- 软件工程 (34)
- JAVA (229)
- C/C++/C# (77)
- JavaScript (8)
- PHP (1)
- Ruby (3)
- MySQL (14)
- 数据库 (19)
- 心情记事 (12)
- 团队管理 (19)
- Hadoop (1)
- spring (22)
- mybatis(ibatis) (7)
- tomcat (16)
- velocity (0)
- 系统架构 (6)
- JMX (8)
- proxool (1)
- 开发工具 (16)
- python (10)
- JVM (27)
- servlet (5)
- JMS (26)
- ant (2)
- 设计模式 (5)
- 智力题 (2)
- 面试题收集 (1)
- 孙子兵法 (16)
- 测试 (1)
- 数据结构 (7)
- 算法 (22)
- Android (11)
- 汽车驾驶 (1)
- lucene (1)
- memcache (12)
- 技术架构 (7)
- OTP-Erlang (7)
- memcached (17)
- redis (20)
- 浏览器插件 (3)
- sqlite (3)
- Heritrix (9)
- Java线程 (1)
- scala (0)
- Mina (6)
- 汇编 (2)
- Netty (15)
- libevent (0)
- CentOS (12)
- mongod (5)
- mac os (0)
最新评论
-
kingasdfg:
你这里面存在一个错误添加多个任务 应该是这样的 /** * ...
Quartz的任务的临时启动和暂停和恢复【转】 -
kyzeng:
纠正一个错误,long型对应的符号是J,不是L。
Jni中C++和Java的参数传递 -
zhaohaolin:
抱歉,兄弟,只是留下作记录,方便学习,如果觉得资料不好,可以到 ...
netty的个人使用心得【转】 -
cccoooccooco:
谢谢!自己一直以为虚机得使用网线才可以与主机连接呢。。
主机网卡无网线连接与虚拟机通信 -
yuqilin001:
要转别人的东西,请转清楚点嘛,少了这么多类,误人子弟
netty的个人使用心得【转】
Sphinx 0.9.9及以前的版本,原生不支持实时索引,一般的做法是通过主索引+增量索引的方式来实现“准实时”索引,最新的1.10.1(trunk中,尚未发 布)终于支持real-time index,查看SVN中文档,我们很容易利用Sphinx搭建一个按需索引(on demand index)的全文检索系统。
参考文章:http://filiptepper.com/2010/05/27/real-time-indexing-and-searching-with-sphinx-1-10-1-dev.html
首先,从sphinxsearch的SVN下载最新的代码,编译安装:
svn checkout http:// sphinxsearch.googlecode.com/ svn/ trunk sphinx cd sphinx/ ./ configure --prefix =/ path/ to/ sphinx make make install
编译没问题的话,在sphinx安装目录下的etc,建立sphinx.conf的配置文件,记得一定指定中文编码方面的配置搜索,否则中文会有问题:
index rt { # 指定索引类型为real-time index type = rt # 指定utf-8编码 charset_type = utf-8 # 指定utf-8的编码表 charset_table = 0..9, A..Z->a..z, _, a..z, U+410..U+42F->U+430..U+44F, U+430..U+44F # 一元分词 ngram_len = 1 # 需要分词的字符 ngram_chars = U+3000..U+2FA1F # 索引文件保存地址 path = /path/to/sphinx/data/rt # 索引列 rt_field = message # 索引属性 rt_attr_uint = message_id } searchd { log = /path/to/sphinx/log/searchd.log query_log = /path/to/sphinx/log/query.log pid_file = /path/to/sphinx/log/searchd.pid workers = threads # sphinx模拟mysql接口,不需要真正的mysql,mysql41表示支持mysql4.1~mysql5.1协议 listen = 127.0.0.1:9527:mysql41 }
启动sphinx服务:
/ path/ to/ sphinx/ bin/ searchd --config / path/ to/ sphinx/ etc/ sphinx.conf
插入几条数据看看:
ubuntu:chaoqun ~ :mysql - h127.0.0.1 - P9527 Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version : 1.10.1- dev ( r2351) Type 'help;' or '\h ' for help . Type '\c ' to clear the current input statement. mysql> INSERT INTO rt VALUES ( 1 , 'this message has a body' , 1 ) ; Query OK, 1 row affected ( 0.01 sec) mysql> INSERT INTO rt VALUES ( 2 , '测试中文OK' , 2 ) ; Query OK, 1 row affected ( 0.00 sec) mysql>
测试全文检索:
mysql> SELECT * FROM rt WHERE MATCH ( 'message' ) ; +------+--------+------------+ | id | weight | message_id | +------+--------+------------+ | 1 | 1643 | 1 | +------+--------+------------+ 1 row in set ( 0.00 sec) mysql> SELECT * FROM rt WHERE MATCH ( 'OK' ) ; +------+--------+------------+ | id | weight | message_id | +------+--------+------------+ | 2 | 1643 | 2 | +------+--------+------------+ 1 row in set ( 0.01 sec) mysql> SELECT * FROM rt WHERE MATCH ( '中' ) ; +------+--------+------------+ | id | weight | message_id | +------+--------+------------+ | 2 | 1643 | 2 | +------+--------+------------+ 1 row in set ( 0.00 sec) mysql> SELECT * FROM rt WHERE MATCH ( '我' ) ; Empty set ( 0.00 sec) mysql>
简单方便,码完收工。
Tags: on demand index , real-time index , sphinx , 实时索引
发表评论
-
调试jdk中的源码,查看jdk局部变量
2013-06-15 23:30 1055调试jdk中的源码,查看jdk局部变量 2012-04 ... -
Eclipse快捷键 10个最有用的快捷键<转>
2013-04-11 23:28 1082Eclipse中10个最有用的快捷键组合 一个Eclip ... -
Lucene 3.6 中文分词、分页查询、高亮显示等
2012-12-09 23:35 18241、准备工作 下载lucene 3.6.1 : htt ... -
Maven实战(九)——打包的技巧(转)
2012-10-12 00:41 941“打包“这个词听起 ... -
基于Maven的web工程如何配置嵌入式Jetty Server开发调试环境(转)
2012-10-12 00:28 9421、首先在web工程的POM文件里添加依赖jar包如下: ... -
轻轻松松学Solr(1)--概述及安装[转]
2012-09-18 14:59 998概述 这段时间对企 ... -
分析Netty工作流程[转]
2012-09-04 19:02 893下面以Netty中Echo的例 ... -
让eclipse在ubuntu下面好看一点
2012-03-27 10:17 925<p> </p> <h1 cla ... -
zookeeper安装和应用场合(名字,配置,锁,队列,集群管理)[转]
2012-01-12 17:59 1653安装和配置详解 本文 ... -
Jakarta-Common-BeanUtils使用笔记[转]
2012-01-10 14:13 1160Jakarta-Common-BeanUtils ... -
一个关于Java Thread wait(),notify()的实用例【转】
2012-01-07 16:05 1024///// // ProducerConsume ... -
Java基础:Java中的 assert 关键字解析【转】
2012-01-06 19:50 1066J2SE 1.4在语言上提供了 ... -
一篇不错的讲解Java异常的文章(转载)----感觉很不错,读了以后很有启发[转]
2012-01-06 15:02 1272六种异常处理的陋习 ... -
如何解决HP QC(Quality Center)在Windows 7下不能工作的问题
2011-12-26 10:48 1588HP QC(Quantity Center) 是一款不错的测 ... -
JAVA读写文件,中文乱码 【转】
2011-12-19 23:43 2123最近在做HTML静态生成,需要从硬盘上把模版文件的内容读出来。 ... -
Java 6 JVM参数选项大全(中文版)【转】
2011-12-19 19:51 974Java 6 JVM参数选项大全(中文版) 作者 ... -
使用assembly plugin实现自定义打包【转】
2011-12-13 01:58 975在上一篇文章中,讨论到在对maven的机制不熟悉的情况下,为了 ... -
使用maven ant task实现非标准打包[转]
2011-12-13 01:56 1050maven很强大,但是总有些事情干起来不是得心应手,没有使用a ... -
Java日期转换SimpleDateFormat格式大全【转】
2011-12-08 20:22 131924小时制时间 显示: public clas ... -
使用Spring的表单标签库
2011-11-22 20:08 107813.9. 使用Spring的 ...
相关推荐
Sphinx是一个高性能、开源的全文检索引擎,专为配合SQL数据库而设计,如MySQL和PostgreSQL,用于实现高效且专业的全文搜索功能。它的核心优势在于能够提供比数据库原生搜索更强大的搜索性能,并且易于集成到各种使用...
2. 创建索引和查询速度快:利用Sphinx的高性能,通过主键查询优化性能。 3. 服务类型分离:读取索引源时锁定MySQL表,避免写操作阻塞,保证数据一致性。 在实际应用中,Sphinx不存储文本字段,仅返回ID等非文本信息...
标题 "PHP搜索引擎Sphinx使用教程.zip" 提供的是关于如何在PHP环境中利用Sphinx搜索引擎进行全文检索的信息。Sphinx是一个高效、开源的全文搜索引擎,它为多种编程语言提供了API接口,包括PHP,使得开发者能够方便地...
3. **查询测试**:利用Sphinx的API接口编写查询逻辑,进行搜索测试,验证检索结果的准确性。 #### 七、遗留问题 - **索引与数据库的一致性**:确保索引与数据库内容保持一致,避免因数据更新不同步而导致的搜索结果...
总的来说,Django-Sphinx通过提供一个简单的接口,让Django开发者能够方便地利用Sphinx的全文搜索能力,提高了Web应用的用户体验。这种结合不仅降低了开发难度,也使得全文检索成为Django项目的一个强大特性。在实际...
【标题】"PHP实例开发源码—Sphinx全文检索引擎php版 for Windows"是一个针对Windows平台的PHP开发实例,它整合了Sphinx全文搜索引擎,旨在帮助开发者理解和运用Sphinx进行PHP项目的全文检索功能构建。 【Sphinx...
同时,可以利用Sphinx提供的管理工具进行监控和优化,以保证搜索性能。 总的来说,Sphinx全文检索引擎为开发人员提供了一个强大且灵活的解决方案,用于构建高性能的全文搜索功能。无论是在网站、电子商务平台还是...
1. **全文检索**:Sphinx的核心功能是全文搜索,它能快速地在大量文本数据中找到匹配的查询词,提供了布尔运算、短语匹配、模糊搜索等高级搜索特性。 2. **索引构建**:Sphinx通过建立倒排索引来加速搜索过程。索引...
MySQL Sphinx 是一种基于全文检索的搜索引擎,主要被用来增强数据库系统的搜索功能,尤其适用于大量数据的高效检索。Sphinx 由俄罗斯开发者 Andrew Aksyonoff 创建,旨在解决由数据库驱动的网站所面临的搜索质量和...
Sphinx 是一个高性能全文搜索引擎,尤其适用于需要实时更新索引的应用场景。它的核心特性包括高效、灵活的配置以及对多种数据源的支持。在本篇文章中,我们将深入探讨 Sphinx 的实时索引(Real-Time Indexing)功能...
标题 "基于PHP的Sphinx全文检索引擎php版 for Windows.zip" 暗示了这是一个针对Windows操作系统的Sphinx全文搜索引擎的PHP接口版本。Sphinx是一个开源的、高性能的全文搜索引擎,广泛应用于网站内容搜索和数据索引。...
2. **近实时搜索**:利用Sphinx的实时索引功能,实现在数据插入后短时间内即可搜索到新数据。 3. **多语言支持**:配置Sphinx支持多种语言,进行跨语言的全文检索。 4. **搜索建议与自动补全**:通过构建额外的索引...
**Sphinx 社区全文搜索平台配置手册** Sphinx 是一款源自俄罗斯的开源全文搜索引擎,以其高效的性能和灵活的配置闻名。在面对如 Discuz! 这样的大型论坛系统时,传统的 MySQL 数据库的全文搜索功能往往力不从心,而...
在构建全文检索系统时,Sphinx、Python和Oracle这三者常常被结合使用,以实现高效、可扩展的搜索引擎解决方案。下面将详细解释这三个技术及其在构建全文检索系统中的作用。 1. Sphinx:Sphinx是一个开源的全文搜索...
综上所述,本文讨论了如何利用Sphinx作为全文搜索引擎核心,结合MySQL数据库和Python编程,为基于Linux+Apache的网站架构设计并实现一个高性能的站内搜索引擎。文章中提到的技术点不仅涉及到了搜索引擎的构建原理,...
总的来说,Sphinx JAVAAPI为Java开发者提供了便捷的接口,使其能够在Java应用中充分利用Sphinx的高性能全文检索功能。通过灵活的API设计,开发者可以轻松地构建复杂的搜索逻辑,提升应用程序的用户体验。
在本文中,我们将深入探讨如何在Yii2框架中集成Sphinx搜索功能,为你的Web应用程序提供高效的全文检索体验。Yii2是一款快速、安全且可扩展的PHP框架,而Sphinx是一个开源的、高性能的全文搜索引擎,它允许快速、精确...
Ruby-pocketsphinxruby是Ruby开发者用来集成Pocketsphinx的一个库,它使得在Ruby环境中实现语音识别成为可能。Pocketsphinx是CMU Sphinx项目的一部分,是一个开源的、跨平台的连续语音识别引擎,广泛用于各种语音...
Sphinx全文检索引擎是一款高效、灵活且开源的全文...要充分利用Sphinx的功能,开发者需要理解其配置文件的结构,学习如何编写查询语句,并熟悉其提供的API,以便将其无缝集成到自己的应用中,提供高效的全文搜索体验。
首先,Sphinx扩展为PHP7提供了原生支持,允许开发者利用Sphinx的特性进行快速、精准的搜索。这个扩展包括了对SphinxAPI的封装,使得开发者可以创建索引、执行查询、处理结果等。通过在PHP代码中调用Sphinx的函数,如...