本月博客排行
-
第1名
宏天软件 -
第2名
kaizi1992 -
第3名
vipbooks - wallimn
- ganxueyun
- arpenker
- daizj
- xpenxpen
- yeluowuhen
- zhangjijun
- sunnylocus
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
wy_19921005 - gashero
- gengyun12
- robotmen
- vipbooks
- 大家都说我很棒
- fantaxy025025
- wallimn
- hbxflihua
- qepwqnp
- e_e
- 解宜然
- ranbuijj
- javashop
- zw7534313
- ssydxa219
- jickcai
- sam123456gz
- gdpglc
- zysnba
- sichunli_030
- tanling8334
- appalese
- benladeng5225
- gaojingsong
- wiseboyloves
- zhangyi0618
- xpenxpen
- jh108020
- luxurioust
- xyuma
- nychen2000
- 龙哥IT
- arpenker
- wjianwei666
- wangchen.ily
- jbosscn
- lzyfn123
- 狂盗一枝梅
- Jameslyy
- hanbaohong
- java-007
- xiangjie88
- mengjichen
- kaizi1992
- silverend
- ajinn
- zxq_2017
博客专栏最新文章
[互联网] lucene-对hit结果提供的导航及过滤结果的缓存
1、导航
HitIterator hi=(HitIterator)(hs.iterator());
while(hi.hasnext());
{
Hit ht=(Hit)(hi.next());
.............
.............
.............
}
2、缓存
除了QueryFilter外的filter没有缓存,所以CachingWrapperFi ...
[互联网] lucene-多字段、多索引搜索与多线程搜索
1、多字段搜索
1)
Term t1=new Term("title","会议");
TermQuery q1=new TermQuery(t1);
Term t2=new Term("context","交通部");
TermQuery q2=new TermQuery(t2);
BooleanQuery ...
[互联网] lucene-queryparser的使用说明
1、使用queryparser完成解析搜索请求
2、基本格式如:
QueryParser parser=new QueryParser("字段名称","分析器实例");
Query q=parser.parse("关键词")
3、例如:解析一个关键字太阳
QueryParser parser=new QueryParser(&qu ...
[研发管理] 【Ray谈项目管理】之一 老生常谈:项目管理的三要素
年代久远的项目管理
项目管理的实践可以追溯到古代的一些主要大型设施如,如埃及金字塔、中国的长城、宫殿、运河、大桥、欧洲的古教堂、道路、城堡等的建设之中。而现代项目管理通常被认为开始于20世纪40年代,比较典型的案例是美国军方研制原子弹的曼哈顿计划,现代项目管理的一些主要技术是在长期的实践中逐渐成形的:
1917年,亨利甘特发明了著名的甘特图,使项目经理按日历制作任务图表,用于日常工作安排 ...
[互联网] lucene-索引文档的删除、更新及增强加权
1、删除
1)使用IndexReader类实现,这个类并没有立即从索引中删除文档,而只是在这些文档上加一个删除标记,直到IndexReader调用close()后才真正将它们删除。
2)
maxDoc()返回下一个可得到的文档的内部编号。
numDocs()返回索引中的文档数量。
文档编号从0开始
3)
public class DocumentDeleteTest extendsBa ...
[互联网] lucene-索引日期与索引数字和排序
一、索引日期
1、Field.Keyword(String,Date)方法和DateField类进行索引
索引今天的日期可以这么做:
Document doc=new Document();
doc.add(Field.Keyword("indexDate",new Date()));
lucene内部使用了DateField类将日期转成字符串。
2、可以先转换为YY ...
[互联网] lucene-可追加的域
假设有一个应用程序可以产生一个给定词语的一系列同义词,而你想使用Lucene来索引这个基本词和它所有的同义词。
StringbaseWord="fast";
Stringsynonys[]=String{"quick","rapid","speedy"};
Documentdoc=new Documnet();
...
[互联网] lucene-理解索引过程
1、索引一个文件调用lucene公用API的方法完成
2、
1)转换为文本:数据必须转换成Lucene能够处理的格式-纯文本字符流
提取的数据创建Lucene的Document对象及其对应的Field对象。
2)分析:完成了对索引数据的预处理,创建了带有若干域的Document对象,可以调用IndexWriter的addDocument(Document)方法,将数据传给Lucene进行 ...
[互联网] lucene-替代品MG4J
搜索engine-MG4J
MG4J 是另一个搜索engine 。与Lucene 主要区别是,它提供了cluster 功能,具有更OO的设计方式。 MG4J可以让你为大量的文档集合构建一个被压缩的全文本索引,通过使内插编码(interpolativecoding)技术。 虽然MG4J(Managing Gigabytes forJava)不是一个像Lucene、Egothor和Xapi ...
[互联网] lucene-限制域的大小maxFieldLength
1、有些应用程序会索引事先不知道大小的文档。为了控制应用程序对内存和虚拟内存的使用,限制输入索引的文档数量。有些则可能只需要索引每个文档中的一部分内容。
2、为了把域的大小限制在1000个项以内,某个应用程序也许会把maxFieldLength设置为1000。可以把它设置为Integer.MAX_VALUE。
3、MAXFieldLength的值可在索引过程中的任意时刻被修改,并对其后增加的 ...
[互联网] lucene-利用内存中索引和多线程提高索引效率
1、RAMDirectory和FSDirectory对比
RAMDirectory在内存中所进行的操作比FSDirectory在磁盘上所完成的工作要快得多。
2、即使使用索引参数来使Lucene减少在磁盘上合并段的频率,基于FSDirectory的索引还要把它们写入磁盘,而RAMDirectory完全不用写磁盘。
3、将RAMDirectory做为一个缓冲器实现对索引的、批处理
1)创建 ...
[互联网] lucene-优化索引
1、优化索引其实就是将多个索引文件合并成单个文件的过程,为了减少索引文件的数量级,能在搜索时减少读取索引文件的时间而进行的操作。
2、可通过调用IndexWriter的optimize()方法来优化一个索引。索引的优化过程涉及到很多磁盘的输入、输出操作,所以要恰当地进行索引的优化操作
3、优化索引过程中需要原来空间的2倍,完成后,磁盘空间会降回到优化前的状态。
4、优化操作的最佳时机是在索 ...
[互联网] lucene-线程安全性
1、lucene不允许使用多个IndexWriter或IndexReader实例同时对一个索引进行修改。但这2个类都是线程安全的
2、2个类的实例都可以被多线程共享,Lucene会对各个线程中所有对索引进行修改的方法的调用进行恰当的同步处理,以保证修改操作能一个接一个有序进行。
3、恰当的处理是指保证这2个类的对象对索引的修改操作不能重叠,使用IndexWriter对象将新文档增加到索引之前 ...
[互联网] lucene的主要搜索API
类
用途
IndexSeacher
搜索操作的入口,所有搜索操作都是通过IndexSeacher实例使用一个重载的search方法来实现
Query(及其子类)
具体的Query子类为每一种特定类型的查询进行逻辑上的封装。Query实例被传递到IndexSearcher的search方法中
QueryParser
...
[互联网] lucene-索引锁机制
1.在lucene中,锁机制是与并发性相关的一个主题,在同一时刻只允许单一进程的所有代码段中,lucene都创建了基于文件的锁,以此来避免误用lucene的api造成对索引的损坏。每个索引都有自身的锁文件集。锁文件放在计算机的临时目录中,这个目录由java的java.io.tmpdir中的系统属性所指定。
2.
1)IndexReader的isLocked(Directory)-这个方法可以 ...
[互联网] lucene-使用QueryParser和IndexSearcher
QueryParser
QueryParser把查询表达式转换为lucene内置的查询类型
查询表达式
匹配的文档
java
默认域包含java项的文档
java junit
java or junit
默认域中包含java和junit中的一个或两个文档。
+java +junit
java AND junit
...
热门博客专栏
最新专栏
热门文章
最新评论
只有@AspectJ支持命名切入点,而Schema风格不支持命名切入点。有一个问题不太明白Schema ...
dagger9527 评论了 【第六章】 AOP 之 6.5 AspectJ切入点语法 ...
dagger9527 评论了 【第六章】 AOP 之 6.5 AspectJ切入点语法 ...
线上demo已经上线http://www.sparrowzoo.net/examples/markdo ...
zh_harry 评论了 高性能轻量级markdown 解析器java 版spar ...
zh_harry 评论了 高性能轻量级markdown 解析器java 版spar ...