- 浏览: 241662 次
- 性别:
- 来自: 北京
-
最新评论
-
akka_li:
学习了!但是为什么后续的没有了?!
EJB4:RMI和RMI-IIOP -
springaop_springmvc:
apache lucene开源框架demo使用实例教程源代码下 ...
Lucene学习笔记(一)Lucene入门实例 -
qepipnu:
求solr 客户端 jar包
Solr学习笔记(三)Solr客户端开发实例 -
zhangbc:
是这问题,赞!
Oracle Start Up 2 Oracle 框架构件、启动、解决一个问题 -
feilian09:
查询 select hibernate jdbc 那个效率快
Hibernate,JDBC性能探讨
文章列表
Abstract
First i give my conclusion: Lucene can index and search simultaneously, what's more, we can only index one document and then we can search this document at once. Sounds cool, but to do like this is necessary or useful? The answer is NO. To account for the detail reason, we should first ...
先看一段代码及其运行结果:
File indexFile = new File("lucene.index_all");
QueryService service = new QueryService();
IndexReader reader = CBEUtil.getIndexReader(indexFile);
IndexSearcher searcher = new IndexSearcher(reader);
String start = "2010-07-27T14:30:57.78Z", end = "2010-07- ...
如果你想快速查询你磁盘上文件,或查询邮件、Web页面,甚至查询存于数据库的数据,你都可以借助于Lucene来完成。但是要完成查询就必须先建立索引。首先从Lucene API说起:
1、 Lucene API(核心操作类)
IndexWriter
创建和维护索引(向原索引中添加新Document,设置合并策略、优化等)
FSDirectory
最主要用来存储索引文件的类,表示将索引文件存储到文件系统
Document
索引和查询的原子单元,一个Document包含一系列Field
IndexReader
一个抽象类,提供了访问索引的接口,当然访问索引也可 ...
学习Lucene有两周时间,现就这两周的学习做一个简单小结,写了一个入门级别的实例,如下面所示;
小结:
一、 Lucene是全文搜索引擎,注意是全文检索,但只检索文本。具体应用可以总结为一句话:先建立索引,再进行搜索;
二、从信息源拷贝到本地进行加工,称为索引库(信息集合),加工主要包括建立索引,具体是把文本中的关键字拆分出来建立索引;搜索时在本地索引库中搜索,具体是把搜索的字符串解析后再到索引库中匹配;
三、文本在建立索引和搜索时都会进行分词,并且要使用同一个分词器。
下面展示运行例子,先贴运行截图:
本例子是一个Web项目,需要运行在Servlet容器中,下载附件War包后 ...
准备:
Tomcat版本:apache-tomcat-7.0.0
Solr版本:apache-solr-1.4.1
开始:解压apache-solr-1.4.1.zip包,解压开目录结构如下:
将apache-solr-1.4.1\example\webapps下solr.war复制到Tapache-tomcat-7.0.0\webapps中;
将apache-solr-1.4.1\example下solr文件夹复制到apache-tomcat-7.0.0\bin下;
部署完成,测试,本地访问:http://localhost:8080/solr/admin/ ...
准备:
为什么要进行索引复制呢?当有很多个客户并发访问某Solr服务器,这可能会导致Solr服务器崩溃(Solr服务器性能达不到这些客户并发访问的需求),这时就可以考虑通过索引复制,将索引复制到多个服务器上,这就是Solr的索引复制,如下图所示:
如图:Master Solr 为性能达不到很多客户并发访问的服务器,是需要被索引复制的服务器,Slave instances 为复制了Master Solr上索引的服务器,这样客户端可以访问Master Solr 和 Slave instances中的任意一个,以便降低了服务器性能的要求;
开始:
同时开启三台Tomcat服务器,端口号 ...
Warming Up:
本文章通过两种方法索引数据为主线,说明Solr客户端开发,两种方法分别是:直接发送XML文件到Solr服务器;通过Solrj建立客户端程序。本文分别从这两个方面各写一个例子程序;
Dependency:Solr: apache-solr-1.4.1 Tomcat: apache-tomcat-7.0.0
Note:本文谈论到不止数据索引,还包括对Solr索引数据的优化,回滚,删除等处理
方法1:直接发送XML文件到Solr服务器
由题目可知,直接发送数据到Solr服务器,必须和服务器建立交互关系,这里我提供的解决办法自己写一个Tomcat客户端,此客 ...
准备:
当你的所有数据非常多,一台服务器无法承担,这时Sharding是一种常见的扩展解决策略,即将这些索引数据分散到不同的服务器上,而查询时Solr具备将单一的查询请求分发到多个Solr shards上,并聚集结果到一个单一的result里返回调用者。
建立分布式索引需遵循以下条件:
索引的文档必须有一个唯一键; 当拥有相同的id的文档被查询到时,solr将选择第一个文档。其他的结果将被丢弃;在处理的过程中,也即是 stage过程中,索引是有可能发生变化的。这样在索引更新的时刻,可能会发现搜索的结果跟索引不匹配的现象。
实例描述:
操作系统:WindowsX ...