lucene等搜索引擎解析
收藏

lucene等搜索引擎解析

分享到: Sina Tec

最近更新文章

搜索引擎开发lucene-笔者博客的大部分lucene习作源码

有一个小小较完整的实例,详见说明.txt 见附件,解压密码:http://deepfuture.javaeye.com/
deepfuture 评论(9) 有6054人浏览 2010-03-01 20:36

lucene-内存索引、内存索引保存在硬盘、索引优化

  索引代码 package bindex; import jeasy.analysis.MMAnalyzer;import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;import org.apache.lucene.analysis.standard.StandardAnalyzer;import org.apache ...
deepfuture 评论(2) 有5286人浏览 2010-01-19 21:25

lucene-对hit结果提供的导航及过滤结果的缓存

1、导航 HitIterator hi=(HitIterator)(hs.iterator()); while(hi.hasnext()); { Hit ht=(Hit)(hi.next()); ............. ............. ............. } 2、缓存 除了QueryFilter外的filter没有缓存,所以CachingWrapperFi ...
deepfuture 评论(0) 有2089人浏览 2010-01-09 19:43

lucene-多字段、多索引搜索与多线程搜索

1、多字段搜索 1) Term t1=new Term("title","会议"); TermQuery q1=new TermQuery(t1); Term t2=new Term("context","交通部"); TermQuery q2=new TermQuery(t2); BooleanQuery ...
deepfuture 评论(0) 有4438人浏览 2010-01-09 17:47

lucene-queryparser的使用说明

1、使用queryparser完成解析搜索请求 2、基本格式如: QueryParser parser=new QueryParser("字段名称","分析器实例"); Query q=parser.parse("关键词") 3、例如:解析一个关键字太阳 QueryParser parser=new QueryParser(&qu ...
deepfuture 评论(0) 有12339人浏览 2010-01-09 17:07

lucene-索引过程和搜索过程的核心类

索引过程中的核心类 1、执行简单的索引需要以下几个类: 1)IndexWriter 是索引过程的核心组件,这个类用于创建一个新的索引并把文档加到已有的索 ...
deepfuture 评论(0) 有1828人浏览 2009-12-26 13:22

lucene-索引文档的删除、更新及增强加权

1、删除 1)使用IndexReader类实现,这个类并没有立即从索引中删除文档,而只是在这些文档上加一个删除标记,直到IndexReader调用close()后才真正将它们删除。 2) maxDoc()返回下一个可得到的文档的内部编号。 numDocs()返回索引中的文档数量。 文档编号从0开始 3) public class DocumentDeleteTest extendsBa ...
deepfuture 评论(1) 有3869人浏览 2009-12-25 22:26

lucene-索引日期与索引数字和排序

一、索引日期 1、Field.Keyword(String,Date)方法和DateField类进行索引 索引今天的日期可以这么做: Document doc=new Document(); doc.add(Field.Keyword("indexDate",new Date())); lucene内部使用了DateField类将日期转成字符串。 2、可以先转换为YY ...
deepfuture 评论(0) 有2566人浏览 2009-12-25 22:26

lucene-可追加的域

假设有一个应用程序可以产生一个给定词语的一系列同义词,而你想使用Lucene来索引这个基本词和它所有的同义词。 StringbaseWord="fast"; Stringsynonys[]=String{"quick","rapid","speedy"}; Documentdoc=new Documnet(); ...
deepfuture 评论(0) 有1512人浏览 2009-12-25 22:25

lucene-调整索引性能

1、当新的Document对象增加到Lucene索引里时,它们最初将被缓存在内存中,而不是立刻写入磁盘中 2、IndexWriter提供了几个变量,用于调节缓存的大小和 ...
deepfuture 评论(0) 有1829人浏览 2009-12-25 22:24

lucene-理解索引过程

1、索引一个文件调用lucene公用API的方法完成 2、 1)转换为文本:数据必须转换成Lucene能够处理的格式-纯文本字符流 提取的数据创建Lucene的Document对象及其对应的Field对象。 2)分析:完成了对索引数据的预处理,创建了带有若干域的Document对象,可以调用IndexWriter的addDocument(Document)方法,将数据传给Lucene进行 ...
deepfuture 评论(0) 有1545人浏览 2009-12-25 22:24

lucene-替代品MG4J

搜索engine-MG4J   MG4J 是另一个搜索engine 。与Lucene 主要区别是,它提供了cluster 功能,具有更OO的设计方式。  MG4J可以让你为大量的文档集合构建一个被压缩的全文本索引,通过使内插编码(interpolativecoding)技术。  虽然MG4J(Managing Gigabytes forJava)不是一个像Lucene、Egothor和Xapi ...
deepfuture 评论(0) 有2032人浏览 2009-12-25 22:23

lucene-限制域的大小maxFieldLength

1、有些应用程序会索引事先不知道大小的文档。为了控制应用程序对内存和虚拟内存的使用,限制输入索引的文档数量。有些则可能只需要索引每个文档中的一部分内容。 2、为了把域的大小限制在1000个项以内,某个应用程序也许会把maxFieldLength设置为1000。可以把它设置为Integer.MAX_VALUE。 3、MAXFieldLength的值可在索引过程中的任意时刻被修改,并对其后增加的 ...
deepfuture 评论(0) 有4337人浏览 2009-12-25 22:22

lucene-利用内存中索引和多线程提高索引效率

1、RAMDirectory和FSDirectory对比 RAMDirectory在内存中所进行的操作比FSDirectory在磁盘上所完成的工作要快得多。 2、即使使用索引参数来使Lucene减少在磁盘上合并段的频率,基于FSDirectory的索引还要把它们写入磁盘,而RAMDirectory完全不用写磁盘。 3、将RAMDirectory做为一个缓冲器实现对索引的、批处理 1)创建 ...
deepfuture 评论(0) 有2912人浏览 2009-12-25 22:22

lucene-优化索引

1、优化索引其实就是将多个索引文件合并成单个文件的过程,为了减少索引文件的数量级,能在搜索时减少读取索引文件的时间而进行的操作。 2、可通过调用IndexWriter的optimize()方法来优化一个索引。索引的优化过程涉及到很多磁盘的输入、输出操作,所以要恰当地进行索引的优化操作 3、优化索引过程中需要原来空间的2倍,完成后,磁盘空间会降回到优化前的状态。 4、优化操作的最佳时机是在索 ...
deepfuture 评论(0) 有1611人浏览 2009-12-25 22:21

lucene-并发性

1、任意数量的只读操作可以同时执行。 2、在索引正在被修改时,我们可以同时执行任意数量的只读操作。 3、在某一时刻,只允许执行一个修改索引的操作。
deepfuture 评论(0) 有1330人浏览 2009-12-25 22:18

lucene-线程安全性

1、lucene不允许使用多个IndexWriter或IndexReader实例同时对一个索引进行修改。但这2个类都是线程安全的 2、2个类的实例都可以被多线程共享,Lucene会对各个线程中所有对索引进行修改的方法的调用进行恰当的同步处理,以保证修改操作能一个接一个有序进行。 3、恰当的处理是指保证这2个类的对象对索引的修改操作不能重叠,使用IndexWriter对象将新文档增加到索引之前 ...
deepfuture 评论(0) 有1887人浏览 2009-12-25 22:16

lucene的主要搜索API

类 用途 IndexSeacher 搜索操作的入口,所有搜索操作都是通过IndexSeacher实例使用一个重载的search方法来实现 Query(及其子类) 具体的Query子类为每一种特定类型的查询进行逻辑上的封装。Query实例被传递到IndexSearcher的search方法中 QueryParser ...
deepfuture 评论(0) 有1886人浏览 2009-12-24 21:08

lucene-索引锁机制

1.在lucene中,锁机制是与并发性相关的一个主题,在同一时刻只允许单一进程的所有代码段中,lucene都创建了基于文件的锁,以此来避免误用lucene的api造成对索引的损坏。每个索引都有自身的锁文件集。锁文件放在计算机的临时目录中,这个目录由java的java.io.tmpdir中的系统属性所指定。 2. 1)IndexReader的isLocked(Directory)-这个方法可以 ...
deepfuture 评论(0) 有1993人浏览 2009-12-24 21:08

lucene-使用QueryParser和IndexSearcher

QueryParser QueryParser把查询表达式转换为lucene内置的查询类型 查询表达式 匹配的文档 java 默认域包含java项的文档 java junit java or junit 默认域中包含java和junit中的一个或两个文档。 +java +junit java AND junit ...
deepfuture 评论(0) 有1788人浏览 2009-12-24 21:07
  • 专栏创建者:deepfuture
  • 创建时间:2012-02-12 11:45:46
  • 专栏文章数:100篇
  • 专栏被浏览:280828 次

本专栏热门文章

最新评论

写的很好~
di1984HIT 评论了 lucene入门-索引网页
你好!我运行你的这个程序出现了问题,麻烦帮下忙!我的QQ:1422461141,谢谢了!
u013328887 评论了 搜索引擎开发lucene-笔者博客的大部分luce ...
解压密码:http://deepfuture.javaeye.com/
deepfuture 评论了 搜索引擎开发lucene-笔者博客的大部分luce ...
解压密码在哪,怎么没找到。谢谢了
jiaqian0118 评论了 搜索引擎开发lucene-笔者博客的大部分luce ...
内存索引写入硬盘文件索引的结果放到硬盘中,这样重启电脑后,仍然可以调取
deepfuture 评论了 lucene-内存索引、内存索引保存在硬盘、索 ...
博主,您好,请问下内存索引的原理是什么呢,大致是什么意思呢?文件的操作不都是在内存的嘛?
w156445045 评论了 lucene-内存索引、内存索引保存在硬盘、索 ...
能不能给一个比较完整的例子
zr19851213 评论了 lucene-同义词分析器
为什么我的英文也不支持?
cf2huihui 评论了 lucene-FuzzyQuery模糊查询
还行啊,做个记号
di1984HIT 评论了 lucene-多Field搜索与多索引搜索
QueryParser通过在某个项增加"~"后缀实现模糊查询 貌似这个有效果,但 ...
alfusen_xiong 评论了 lucene-FuzzyQuery模糊查询
Global site tag (gtag.js) - Google Analytics