摘要: 这个例子使用两种方式来演示如何生成全量索引: 一个是从db中通过sql生成全量索引 一个是通过tika解析文件生成全量索引 1 package SolrJExample; 2 3 import org.apache.solr.client.solrj.SolrServerException; 4 import org.apache.solr.client.solrj.impl.StreamingUpdateSolrServer; 5 import org.apache.solr.client.solrj.impl.XMLResponseParser; 6 import org.a... 阅读全文
posted @ 2013-01-30 13:17 coolbing 阅读(490) 评论(0) 推荐(0) 编辑
摘要: 本文将介绍Solr查询中涉及到的Cache使用及相关的实现。Solr查询的核心类就是SolrIndexSearcher,每个core通常在 同一时刻只由当前的SolrIndexSearcher供上层的handler使用(当切换SolrIndexSearcher时可能会有两个同时提供服务),而Solr的各种Cache是依附于SolrIndexSearcher的,SolrIndexSearcher在则Cache 生,SolrIndexSearcher亡则Cache被清空close掉。Solr中的应用Cache有filterCache、 queryResultCache、documentCache等 阅读全文
posted @ 2013-01-30 13:10 coolbing 阅读(411) 评论(0) 推荐(0) 编辑
摘要: indexed fieldsindexed fields 的数量将会影响以下的一些性能:索引时的时候的内存使用量索引段的合并时间优化时间索引的大小我们可以通过 将 omitNorms=“true” 来减少indexed fields数量增加所带来的影响。stored fieldsRetrieving the stored fields 确实是一种开销。这个开销,受每个文档所存储的字节影响很大。每个文档的所占用的空间越大,文档就显的更稀疏,这样从硬盘中读取数据,就需要更多的i/o操作(通常,我们在存储比较大的域的时候,就会考虑这样的事情,比如存储一篇文章的文档。)可以考虑将比较大的域放到solr 阅读全文
posted @ 2013-01-30 13:04 coolbing 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 每一个搜索请求都会持有一个searcher的引用,而不是创建一个新的searcher,处理完后会释放掉这个引用。Solr在初始化化时,通过SolrCore核心类要做很多的初始化工作,包过读取solrconfig.xml配置文件里的内容,代码如下: 1 booleanQueryMaxClauseCount(); 2 //设置布尔查询最多个数。 3 initListeners(); 4 //读取配置文件的search实例的监听器。 5 6 initDeletionPolicy(); 7 initIndex(); 8 9 initWriters();10 initQParsers();11 ... 阅读全文
posted @ 2013-01-30 11:28 coolbing 阅读(955) 评论(1) 推荐(0) 编辑
摘要: 首先建立评估体系,将workspace里所有的项目close掉,关闭eclipse。优化的用例就是启动eclipse,open一个项目,eclipse会自动build这个项目,保证没有感觉到明显的卡,也就是没有full GC。 开始: eclipse.ini里加入打印gc情况的参数:-XX:+PrintGCTimeStamps-XX:+PrintGCDetails-verbose:gc-Xloggc:gc.log这样eclipse在运行过程中会记录gc日志,显示详细的gc情况,并打印在gc.log中,通过分析这个日志寻找eclipse的性能瓶颈和优化方式。 我最初的参数只是在原版基础上调了堆大 阅读全文
posted @ 2013-01-30 11:25 coolbing 阅读(279) 评论(0) 推荐(0) 编辑
摘要: jdk1.6.21在eclipse 3.6下存在冲突的问题,但说的不是很详细,有人问到,那我就再说一下吧。这是这个官方就有说明的,在下载页面很明显的标出了,只是有的同学不是在官方下载的或者太粗心没注意到。我们看官方是怎么说的。 The Eclipse 3.3 - 3.6 launchers for Windows had a problem with the Oracle/Sun Java VM version '1.6.0_21-b06'.UPDATE: Oracle/Sun have released a respin of their JDK/JRE to fix thi 阅读全文
posted @ 2013-01-30 11:24 coolbing 阅读(203) 评论(0) 推荐(0) 编辑
摘要: 原理:利用两个 Windows API - SetProcessWorkingSetSize 与 VirtualLock (适用于 Windows 平台)。切换时果然快很多。官方建议最小值设定在 100 MB,最大值 250 MB 左右。 ----------------------------------------------------------- 下载地址: http://suif.stanford.edu/pub/keepresident/keepresident-0.2.zip安装方法: 解压到Eclipse安装目录,它实际上会增加一个plugins目录下的子目录,然后重启Ecl 阅读全文
posted @ 2013-01-30 11:22 coolbing 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 1, 浮动窗口注释改进 你是否在eclipse里使用过这样一个功能: 当鼠标移动到有javadoc注释的接口方法时, 会出现一个悬浮窗。框内显示该接口方法的详细javadoc内容。(如果没有显示,请调大eclipse.ini里的最大内存量-Xmx256m) 而当鼠标离开方法或移动到悬浮框上时,悬浮框将消失。为了不让悬浮框消失,你需要按 F2 固定住框体,才可以继续查看并可使用滚动条功能(内容比较多)。 3.4 M5里一个新的改进,就是,可以设置,当出现悬浮框并移动到悬浮框上时, 框仍旧保留,并增强了悬浮框的周边功能。 周边功能包括: 1,可以直接点击doc里的元素进行定位。 2... 阅读全文
posted @ 2013-01-30 11:21 coolbing 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <config> 3 4 <luceneMatchVersion>LUCENE_40</luceneMatchVersion> 5 6 <jmx /> 7 8 <lib dir="http://www.cnblogs.com/http://www.cnblogs.com/dist/" regex="apache-solr-dataimporthandler-.*\.jar& 阅读全文
posted @ 2013-01-30 11:16 coolbing 阅读(1144) 评论(0) 推荐(0) 编辑
摘要: schema.xml位于solr/conf/目录下,类似于数据表配置文件,定义了加入索引的数据的数据类型,主要包括type、fields和其他的一些缺省设置。1、先来看下type节点,这里面定义FieldType子节点,包括name,class,positionIncrementGap等一些参数。name:就是这个FieldType的名称。class:指向org.apache.solr.analysis包里面对应的class名称,用来定义这个类型的行为。 1 < schema name = "example" version = "1.2" > 阅读全文
posted @ 2013-01-30 11:13 coolbing 阅读(1023) 评论(0) 推荐(0) 编辑