有个新的技术需求,需要对Lucene4.x的源码进行扩展,把如下的有时间位置的文本写入倒排索引,为此,我扩展了一个TimeTokenizer分词器,在这个分词器里将时间信息写入 偏移量Offset中。扩展了一个Filter,最后查询时通过filter把时间信息传进去过滤想要的时间范围之内的结果。 L ...
分类:
Web程序 时间:
2017-08-01 22:58:31
阅读次数:
208
Lucene在6.0版本之后彻底废除了Filter的使用,采用BooleanQuery来实现Filter的功能,核心代码如下: (对Lucene6之前的Filter不够熟悉的请看这个:http://www.cnblogs.com/forfuture1978/archive/2010/05/19/17 ...
分类:
Web程序 时间:
2017-08-01 22:57:50
阅读次数:
1945
?? solr是基于lucene的一个全文检索服务器,提供了一些类似webservice的API接口,用户可以通过http请求solr服务器,进行索引的建立和索引的搜索。索引建立的过程:用户提交的文本会经过分词器进行分词,分词后的关键字会存到索引库里,索引库是关键字和目标文档的映射集。索引搜索的过程 ...
分类:
系统相关 时间:
2017-07-31 11:23:32
阅读次数:
345
一、简介 ElasticSearch和Solr都是基于Lucene的搜索引擎,不过ElasticSearch天生支持分布式,而Solr是4.0版本后的SolrCloud才是分布式版本,Solr的分布式支持需要ZooKeeper的支持。 这里有一个详细的ElasticSearch和Solr的对比:ht ...
分类:
其他好文 时间:
2017-07-27 16:37:33
阅读次数:
195
Elasticsearch简介 Elasticsearch (ES)是一个基于Apache Lucene(TM)的开源搜索引擎,无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。 但是,Lucene只是一个库。想要发挥其强大的作用,你需使用C#将其集成 ...
之前搭建logstash的时候使用过elasticsearch。 刚好最近在公司也用到了es,写篇水文记录一下也当做笔记吧。 Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,使用RESTful web暴露接口。 它有许多特性,比如以下几个属性 ...
分类:
其他好文 时间:
2017-07-27 00:52:49
阅读次数:
134
1 public sealed class SearchIndexManager 2 { 3 private static readonly SearchIndexManager searchManager=new SearchIndexManager(); 4 private SearchInde... ...
分类:
Web程序 时间:
2017-07-26 01:43:38
阅读次数:
158
简介 ElasticSearch是一个开源的分布式搜索引擎,具备高可靠性,支持非常多的企业级搜索用例。像Solr4一样,是基于Lucene构建的。支持时间时间索引和全文检索。官网:http://www.elasticsearch.org 它对外提供一系列基于java和http的api,用于索引、检索 ...
分类:
其他好文 时间:
2017-07-25 13:38:26
阅读次数:
174
安装完成之后,我们该开始学习关于ElasticSearch最基本的CURD操作了。 ElasticSearch作为一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,其接口也是RESTful 风格。文档储存类型也是json格式。那么我们就可以像操作webapi一样简单的操作 ...
分类:
其他好文 时间:
2017-07-25 13:30:53
阅读次数:
141
1. JDK要求 Solr 4.10 要求JDK版本必须是1.7或更高。 2. 下载 下载地址: http://www.apache.org/dyn/closer.cgi/lucene/solr/ 下载得到zip压缩包,下载的版本为4.10.2. 文件大小148MB左右。 3. 安装 1、 将sol ...