从搜索引擎开始-lucene简介

一、lucene简介: 
     1、什么是全文检索?
            全文检索是指计算机索引程序通过扫描文章中的每一个词,对每一个词建立一个索引,指明该词在文章
        中出现的次数和位置,当用户查询时,检索程序就根据事先建立的索引进行查找,并将查找的结果反馈给用
        户的检索方式。这个过程类似于通过字典中的检索字表查字的过程。
            全文检索的方法主要分为按字检索和按词检索两种。按字检索是指对于文章中的每一个字都建立索引,
        检索时将词分解为字的组合。对于各种不同的语言而言,字有不同的含义,比如英文中字与词实际上是合一
        的,而中文中字与词有很大分别。按词检索指对文章中的词,即语义单位建立索引,检索时按词检索,并且
        可以处理同义项等。英文等西方文字由于按照空白切分词,因此实现上与按字处理类似,添加同义处理也很
        容易。中文等东方文字则需要切分字词,以达到按词索引的目的,关于这方面的问题,是当前全文检索技术
        尤其是中文全文检索技术中的难点。
            全文检索系统是按照全文检索理论建立起来的用于提供全文检索服务的软件系统。一般来说,全文检索
        需要具备建立索引和提供查询的基本功能,此外现代的全文检索系统还需要具有方便的用户接口、面向WWW
        的开发接口、二次应用开发接口等等。功能上,全文检索系统核心具有建立索引、处理查询返回结果集、增
        加索引、优化索引结构等等功能,外围则由各种不同应用具有的功能组成。结构上,全文检索系统核心具有
        索引引擎、查询引擎、文本分析引擎、对外接口等等,加上各种外围应用系统等等共同构成了全文检索系统。
       2、Lucene与全文检索有什么关系?
           Lucene不是一个完整的全文索引应用,而是是一个用Java写的全文索引引擎工具包,它可以方便的嵌入
       到各种应用中实现针对应用的全文索引/检索功能。
       3、lucene中全文检索的机制
           对于lucene来说,主要分为建立索引库和检索索引库两部分,lucene拥有自己特殊的存储数据的索引库;
       通过自身的通用API来实现提取处理数据,存储到索引库的过程。
           lucene是一个基于Java的全文索引工具包。只提供了比较通用API接口设计,用户通过lucene的索引工具包
       进行二次应用接口的开发,既可以开发出适合自己需要的索引应用系统。
           使用lucene索引数据时,所有的操作都是针对于lucene自己的索引库。也可以选择由索引库存储原始数据;
       获得的结果也会是索引库建立时存储的信息。通过lucene能方便的查找和排序搜索出来的结果。
二、lucene详细讲解: 
    1、lucene中提供了很多常用的类和接口,我们从实际的流程出发,一步步的来介绍lucene各个类和接口的作用与实现:
       Document---lucene的逻辑文件
          Document的含义为文档,在lucene中,它代表一中逻辑文件。由于lucene只能识别并处理Document类型的文件
      所以lucene将要查询的数据源看成为Document,即在处理时将数据首先转换为Document。
          Document负责收集数据源,可以将一段文本,几个数据,或是一些链接作为数据源来构建Document的数据源(即
       将它们加入到Documet对象中);lucene就可以为这些数据源建立索引,用户就可以查找它们。
      Field---Document的数据源 
         构成Document的数据源的是Field类型的对象,Field表示数据源中的各种属性,如果将Document看成数据库中的
      一个表格,那么Field就可以表示这个表格中的列属性。
      IndexWriter---lucene的索引工具
          一个构建好的Document是怎样添加到lucene的索引库的呢?是通过lucene的IndexWriter类型的对象,它的主要作
      用是对索引进行创建,加入Document,合并各种索引,以及控制与索引有关的各方面。是索引的主要操作者。
     Analyzer---lucene的分词工具
         这是一个抽象类,使用时需要使用它的子类的实例,常用的有:SimpleAnalyser,StandardAnalyser
     未完,待续...                      
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值