`
akululu
  • 浏览: 44696 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

lucene多索引文件并行查询

阅读更多
Lucene并行索引多目录
Lucene并行索引多目录
1、多字段搜索就是同时要一个以上的字段中的内容进行比较搜索,类似概念在SQL中就是select * from Table where a like '%query%' or b like '%query%'。

Lucene.net中的单个字段查询大家都比较熟悉,这里对字段content进行搜索
Query query = QueryParser.Parse(querystr,"content",new ChineseAnalyzer());
Hits hits = searcher.Search(query);

对多个字段查询用到一个MultiFieldQueryParser对象,该对象继承自Query,我们要对字段title,content进行搜索。
string[] fields = {"content","title"};
Query multiquery = MultiFieldQueryParser.Parse(querystr,fields,new ChineseAnalyzer());
Hits hits = searcher.Search(multiquery);

2、多索引目录就是要在多个索引目录的中进行比较搜索,类似概念在SQL中就是select * from TableA union select * from TableB。
IndexSearcher[] searchers = new IndexSearcher[2];
searchers[0] = new IndexSearcher(IndexPath0);
searchers[1] = new IndexSearcher(IndexPath1);

MultiSearcher multisearcher = new MultiSearcher(searchers);
TopDocs multitopdocs = multisearcher.Search(query, null, 1000);
这个搜索的结果可能有相同的信息,比如你有一条相同的信息在多个目录中索引,搜索的结果就会出现多次相同的信息。

还有一种搜索方式是用到ParallelMultiSearcher这个对象,它是从MulitSearcher继承而来。
ParallelMultiSearcher parallelmultisearcher = new ParallelMultiSearcher(searchers);
TopDocs paralleltopdocs = parallelmultisearcher.Search(query, null, 1000);
这个搜索是对搜索后的结果进行合并,剔除重复的信息。
分享到:
评论

相关推荐

    lucene并行索引

    lucene并行索引

    基于Lucene的分布式并行索引.pdf

    #资源达人分享计划#

    论文研究-并行密文倒排索引研究.pdf

    实验结果表明,Crypt-Lucene与SSE-1相比,索引构建时间减少了约为60%,同时具有较好的空间性能,对于大文档集合,利用MapReduce在4结点构成的Hadoop集群上并行构建8个Crypt-Lucene索引能减少83.4%的时间。

    论文研究-基于Lucene的地名数据库快速检索系统.pdf

    其次,利用内存索引和多线程并行处理技术提高Lucene创建倒排索引效率,并依据地名类别和显示优先级属性优化了检索结果相关度排序策略。最后,开发了一套具有快速搜索和地图定位展示的Web地名检索系统,使用500万条...

    自己动手写搜索引擎(罗刚著).doc

    6.1.1 理解 Lucene 的索引库结构 146 6.1.2 设计一个简单的索引库 148 6.2 创建和维护索引库 149 6.2.1 创建索引库 149 6.2.2 向索引库中添加索引文档 149 6.2.3 删除索引库中的索引文档 151 6.2.4 更新索引库中的...

    概念原理.md

    一个 ES 索引包含很多分片,一个分片是一个 Lucene 的索引,它本生就是一个完整的搜索引擎,可以独立执行建立索引和搜索任务。Lucene 索引又由很多分段组成,每个分段都是一个倒排索引。ES 每次 “refresh” 都会...

    PigExtend:Apache Pig+MapReduce给LuceneSolrElasticSearch构建索引

    主要是利用了Pig框架简化了自己写Hadoop MapReduce程序来构建大规模并行索引的问题,里面封装了主流的全文检索框架,如Lucene,Solr和ElasticSearch 并且支持SolrCloud集群和ElasticSearch集群的分布式索引构建。 这...

    Hadoop.chm HadoopAPI Hadoop英文版最新API

    Hadoop是Apache Lucene的创始人 Doung Cutting 创建的, Hadoop起源于Apache Nutch, 一个开源的网络搜索引擎,也是Apache的Lucene项目的一部分。Hadoop是创始人Doung Cutting的儿子给一头大象起的名字。 Hadoop的子...

    rdfp:Scala中的RDF流处理框架

    支持动态Lucene索引。 RDFStreamProcessingTest.scala包含几个测试用例,这些用例可以作为如何使用的示例。 该框架旨在处理非常大的数据集,并已成功用于处理包含超过1000亿个三元组的德国国家图书馆的数据集。 ...

    数据结构算法

    Parallel的使用 多线程系列(5)5天不再惧怕多线程——第五天 线程池 5天不再惧怕多线程——第四天 信号量 5天不再惧怕多线程——第三天 互斥体 5天不再惧怕多线程——第二天 锁机制 5天不再惧怕多线程——第一天 尝试...

    higo:海狗-多维在线分析系统

    海狗(Higo)是一个分布式的在线分析查询系统,基于hadoop,lucene,solr,蓝鲸等开源系统作为实现,类SQL的查询语法。海狗是快速的高性能的,他的过多因使用了索引,列式存储,以及缓存等技术,因此数据扫描的速度...

    网络爬虫调研报告.doc

    在专业搜索引擎中 ,网络爬虫的任务是获取 Web页面和决定链接的访问顺序 ,它通常从一个 "种子集 "(如用户查询、种子链接或种子页面 )发,以迭代的方式访问页面和提取链接。搜索过程中 ,未访问的链接被暂存在一个称为 ...

    网络爬虫调研报告(1).doc

    在专业搜索引擎中 ,网络爬虫的任务是获取 Web页面和决定链接的访问顺序 ,它通常从一个 "种子集 "(如用户查询、种子链接或种子页面 )发,以迭代的方式访问页面和提取链接。搜索过程中 ,未访问的链接被暂存在一个称为 ...

    网络爬虫调研报告(2).doc

    为了避免同一个 URL被多次处理 ,当一个 URL被处理过后 ,它将被转移到完成队列或者错误队列 (如果发生错误 )。 (3)错误队列 :如果在下载网页是发生错误 ,该 URL将被加入 到错误队列。 (4)完成队列 :如果在处理...

    dwtc-tools:德累斯顿 Web 表语料库 Java 库

    DWTC-Tools:用于处理 Dresden Web Table ... 在语料库上创建 Lucene 索引,包括一些预处理(包webreduce.indexing ) 需要时直接从 Common Crawls S3 访问每个表的原始页面的全文(包webreduce.fulltext ) 应用

    海量分布式日志检索技术的研究.nh

    2.4关系数据检索引擎和lucene的分析比较.............................................……23 2.4.1在全文检索上的比较...................................................................……23 2.4.2在索引...

Global site tag (gtag.js) - Google Analytics