zoukankan      html  css  js  c++  java
  • Lucene:(一)建立索引文件:2。建立索引文件(五)Lucene中Term的概念

    Term索引信息:

    DocumentWriter类写Field信息和Term信息。Field索引信息是调用FieldInfosFieldWriter两个类完成的,这在上一节已经描述。Term索引信息则由DocumentWriter类和其他类共同完成。DoucmentWriter类完成了term的频数和位置信息。现在接着DocumentWriterterm信息这条线,继续索引信息的建立。

     

    1Term概念

    先来介绍一下,Luceneterm概念。Term表示的是一个字符串,拥有域、频数和位置信息等属性,如下:


    由上图:Term规定了一个词由字符串和域组成;而TermInfo则为出现该term的文件个数,频率文件(frq)的指针,位置文件(prx)的指针。

     

     

    2Term相关的接口和类

    Lucene还是用了一些与term相关的接口和类:


    TermEnumTermDocsTermPositions,第一个是抽象类,后两个都是接口。

    这些接口和抽象类的继承和实现类的作用分别如下,它们的实现者一般是SegmentDoucment

       TermEnum提供枚举每一项term的能力;

       TermDocs提供返回<document,frequency>对的能力;

       TermPositions则在TermDocs的基础上提供位置信息的能力。

    SegmentTermDocs等类或继承自这些类或实现这些类,完成了提供term,freq,document信息的枚举功能。具体实现这里不作描述。
  • 相关阅读:
    GitHub Interesting Collection
    使用 CSS3 Flexible Boxes 布局
    消失的属性
    浅谈 JavaScript 模块化编程
    为你的 Javascript 加点咖喱
    软件测试
    osi七层模型
    3_Hydra(爆破神器)
    2_NC(瑞士军刀)
    1_HTTP协议详解
  • 原文地址:https://www.cnblogs.com/wanghoney/p/1242964.html
Copyright © 2011-2022 走看看