Lucene分类统计示例
需求 在检索系统中,遇到了分组统计(Grouping/GroupBy)的需求,比如将搜索结果按照栏目分类,统计每个栏目下各有多少条结果。以前的做法很愚蠢,先发起一次search统计出有多少组,然后在每个组里发起一次search;这样在有N组...
需求 在检索系统中,遇到了分组统计(Grouping/GroupBy)的需求,比如将搜索结果按照栏目分类,统计每个栏目下各有多少条结果。以前的做法很愚蠢,先发起一次search统计出有多少组,然后在每个组里发起一次search;这样在有N组...
Lucene的Hightlight模块可以高亮搜索结果中的关键字,给搜索引擎自定义界面的自由。 如何创建Highlighter 为了创建一个Highlighter,需要一个Formatter和一个Scorer,如下所示: Highlight...
在测试一个查询的时候,我发现第二条搜索结果非常令人不满意,竟然是一条毫无关系的结果。仔细查看了Explanation之后,看到了如下情况: 同义词有很多条,这些同义词虽然每一个的得分都不高,但是累积起来就产生了3.3分左右的高分,直接将一条...
在Lucene中,关闭一个IndexWriter时抛出AlreadyClosedException异常: org.apache.lucene.store.AlreadyClosedException: this Directory is c...
终于将Lucene集成到中文WordPress中了,实现了中文博客的全文搜索。作为一个搞NLP的博主,如果还在用SQL的LIKE做搜索,那也太不上档次了。这次集成主要难点在于 ①PHP平台上并没有一款成熟的分词套件。 ②Lucene的PHP...
在Lucene4.6中通过SynonymFilterFactory实现中文同义词非常方便,只需几行代码和一个同义词词典。这个词典还能在Lucene中实现一定程度的拼写纠错,提升搜索体验。在下面这个例子中我们从磁盘载入一个同义词词典,并且对“...
在Lucene4.6中,想要实现搜索结果按照时间倒序的效果:如果两个文档得分相同,那么就按照发布时间倒序排列;否则就按照分数排列。这种效果在Lucene4.6中实现起来极其简单,直接利用search接口的Sort参数即可达成,完全不需要像某...
这是旧代码在新版本Lucene中出现的异常,异常如下: Exception in thread "main" java.lang.IllegalStateException:&nb...
Lucene的IndexSearcher提供一个explain方法,能够解释Document的Score是怎么得来的,具体每一部分的得分都可以详细地打印出来。这里用一个中文实例来纯手工验算一遍Lucene的评分算法,并且结合Lucene的源...
《Lucene实战(第2版)》 配书代码的下载地址点此,解压后得到lia2e目录,编译运行方法有两种: 最基础的Ant编译: 点击右边的加号载入lia2e下的build.xml脚本,接着在列表里双击某单元对应的程序就行了: 通过IDEA C...