• 2.Lucene基础知识


    分词 analyzers

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

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

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

    索引 index

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

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

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

    Lucene 创建索引的步骤:

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

    文档 document

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

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

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

    Lucene 搜索的步骤:

    • 获取搜索的关键字
    • 根据传入的字段和关键字进行组装搜索语法
    • 根据搜索语法到索引中查询得到索引指向的文档编号
    • 根据文档编号的信息查询出文档数据对象
  • 相关阅读:
    hive之insert导入分区数据
    Hive数据倾斜及优化方案
    Hive中join关键字运行机制及使用详解
    如何去编写一个定时器?
    MapReduce运行原理详解
    nfs共享服务搭建
    IDEA中Java方法的抽取
    阿里巴巴开发规约(Alibaba Java Coding Guidelines)安装介绍
    IDEA集成vue
    写给初学asp.net的新人们 新手学习经验
  • 原文地址:https://www.cnblogs.com/lixingwu/p/13870570.html
Copyright © 2020-2023  润新知