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

lucene学习(3)

阅读更多

Boosting Documents and Fields
setBoost(float) 设置Documents和Fields在index中的重要性

可以给document设置boost,也可以给field设置boost
设置boost会删除原来的document然后重新建立索引

doc.setBoost();
field.setBoost();

 

boost是怎样存储到index中的,利用norms
在建立索引过程中生成的boosts会被结合在一起变成一个浮点数,然后每个文档每个字段
都会存为一个byte。在查询过程中,每个field的norms会被装入内存,重新解码为一个浮点数

即使norms在建立索引的过程中得到,我们也可以用IndexReader的setNorm方法来改变

norms会在搜索过程中消耗过多的内存
我们可以将norms关闭,Field.setOmitNorms(true),这样有可能影响评分,但是影响效果
可以忽略

indexing dates&times
DataTools.dateToString(new Date(),DateTools.Resolution.DAY);

Indexing numbers
lucene利用词典编排来给field排序,也就是说如果有3个数:7,71,20,正常的排序是:7,20,71。但是词典排序是:20,7,71。一个简单和通用的方法是给数字加前缀0:007,020,071

indexing fields for sorting

field建立索引但是不分词Field.Index.NOT_ANALYZED,字段必须存储Integers,Floats,Strings

Field truncation
比如说你只想给一个文档前200个字建立索引
在indexWriter的构造方法中传递MaxFieldLength参数
系统设定的值MaxFieldLength.UNLIMITED和MaxFieldLength.LIMITED

可以调用setMaxFieldLength()方法来修改

IndexWriter.setInfoStream(System.out) 关于合并,删除的信息以及当maxFieldLength到达会显示信息

Optimizing an index

索引优化只能提高搜索的速度,不会加快建立索引的速度,不进行优化也有可能获得很好的搜索吞吐量


IndexWriter提供4个优化方法

  • optimize():将index减少到一个segment,只到操作完成才返回
  • optimize(int maxNumSeqments):部分优化,一般来说,index合并到最后一个segment最消耗时间,所以优化到5个segment会比优化到1个segment快
  • optimize(boolean doWait):同optimize()一样,只是当doWait为false的时候,该方法会立刻返回,合并索引操作在后台进行
  • optimize(int maxNumSegments,boolean doWait)
分享到:
评论

相关推荐

    lucene学习lucene学习

    lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习lucene学习...

    lucene学习

    3、配置开发环境 4、创建索引库 5、查询索引库 6、分析器的分析过程 a) 测试分析器的分词效果 b) 第三方中文分析器 7、索引库的维护 a) 添加文档 b) 删除文档 c) 修改文档 Lucene的高级查询、solr入门 solr在项目中...

    Lucene的的学习资料及案例

    Lucene的的学习资料及案例,包括一个lucene的学习资料总结。供大家学习使用,也有本人写的一个小案例。

    Lucene学习源码.rar

    Lucene学习源码.rar

    lucene 学习文档

    这里面是lucene的相关学习资料,特别适合新手学习。

    lucene学习-02

    lucene学习

    lucene学习资料收集

    NULL 博文链接:https://huanglz19871030.iteye.com/blog/1278428

    lucene学习pdf2

    lucene的讲课文档, luke工具,用来查看lucene的内容。

    Lucene.net学习

    Lucene.net学习.docx

    lucene学习总结

    lucene学习总结:lucene全文检索的原理,索引文件的格式,lucene的整体架构

    【大搜集:lucene学习资料】---<下载不扣分,回帖加1分,欢迎下载,童叟无欺>

    lucene学习笔记 3 .txt lucene入门实战.txt Lucene 的学习 .txt Lucene-2.0学习文档 .txt Lucene入门与使用 .txt lucene性能.txt 大富翁全文索引和查询的例子程序.txt 关于lucene2.0的创建、检索和删除功能...

    Lucene学习文档

    Lucene学习文档Lucene学习文档Lucene学习文档Lucene学习文档

    Lucene 3.6 学习笔记

    第一章 LUCENE基础 2 1.1 索引部分的核心类 2 1.2 分词部分的核心类 2 1.3 搜索部分的核心类 2 第二章 索引建立 3 2.1 创建Directory 3 2.2 创建Writer 3 2.3 创建文档并且添加索引 4 2.4 查询索引的基本信息 5 2.5 ...

    Lucene 3.0 原理与代码分析PDF

    Lucene学习总结之三:Lucene的索引文件格式(3) Lucene学习总结之四:Lucene索引过程分析(1) Lucene学习总结之四:Lucene索引过程分析(2) Lucene学习总结之四:Lucene索引过程分析(3) Lucene学习总结之四:...

    超系统学习Lucene全文检索技术视频教程

    视频详细讲解,需要的小伙伴...学习Lucene对日后学习它的下游技术产品ElasticSearch和Solr将会大有帮助。 系统的学习Lucene全文检索技术,全面掌握搜索原理和底层知识,为学习其他应用层面搜索技术打下坚实的基础。

    Lucene3.3.0学习Demo

    这是我通过对Lucene3.3.0源码进行了简单解读,依据应用详细的做了很多Demo,大家可以一道学习。

    lucene讲义 叫你用lucene算法

    lucene学习教程lucene讲义 叫你用lucene算法

    Lucene+compass学习资料

    Lucene+compass学习资料+ajax

    lucene学习入门程序

    lucene学习入门程序,程序全面系统的描述了lucene各个接口的调用,包括高亮显示,范围搜索等

    搜索引擎lucene学习资料

    本资源有三个内容: 电子书《搜索引擎--原理、技术与系统》 和两个网友的lucene学习分析资源。

Global site tag (gtag.js) - Google Analytics