zoukankan      html  css  js  c++  java
  • 2.Lucene基础知识

    分词 analyzers

    分词比较好理解,我们可以理解为把一个句子分成一个可能的词组成的数组。

    比如:“为了保证用户不受到骚扰” 这个句子可能组成的数组为["为了","保证","用户","不受","到","骚扰"],这样的操作就是分词。

    市场上已有现成的分词工具类,不用我们去写这个算法。

    索引 index

    Lucene 中最重要的对象,搜索就是基于它来操作的。

    Lucene 的索引主要就是把我们需要搜索的内容进行分词,然后根据这些分词来建立索引文件。

    Lucene 的索引就像我们mysql数据库中的一个数据对象一样。

    Lucene 创建索引的步骤:

    • 指定一个存放索引的目录
    • 创建一个索引写入类,用于写入索引和数据对象到索引目录中
    • 创建存放数据的类型,指定是否需要存储、是否分词、是否建立索引等
    • 创建存放数据的文档,把数据按照类型存放进去
    • 把文档添加到到索引中
    • 保存索引和数据到索引目录

    文档 document

    文档表示我们的一条条的数据对象,主要负责存储数据。

    索引最终也是指向这些文档的,因为我们最终目标就是找到这些数据。

    搜索就是根据指定的语法去 Lucene 的索引中搜索数据的一个过程。

    Lucene 搜索的步骤:

    • 获取搜索的关键字
    • 根据传入的字段和关键字进行组装搜索语法
    • 根据搜索语法到索引中查询得到索引指向的文档编号
    • 根据文档编号的信息查询出文档数据对象
  • 相关阅读:
    Delphi 学习笔记
    Extjs 4
    面向对象(OOP)
    Java基础
    Ubantu(乌班图)
    CentOS 6.3操作常识
    英语音标单元音篇
    英语音标双元音篇
    英语音标辅音篇
    Oracle补习班第一天
  • 原文地址:https://www.cnblogs.com/lixingwu/p/13870570.html
Copyright © 2011-2022 走看看