Lucene:基于Java的全文检索引擎的简介

2019-08-07 23:52栏目:电脑操作

1.1        全文检索的概念
 
1)          从大气的新闻中高速、精确地搜寻出要的音讯
 
2)          找寻的从头到尾的经过是文件新闻(不是多媒体)
 
3)          寻找的方法:不是基于语句的情致进行拍卖。假若要寻觅的文书为” 二〇一三年的春晚有赵本山(Zhao Benshan)吗”,那么带有这几个词(二零一一年、春晚、赵本山)就会检索出来。每二个词都是最主要词。
 
4)          周全、快速、精确是衡量全文字笔迹查证索系统的机要指标。
 
5)          概括:
 
a)    只管理公事
 
b)    不管理语义

1、基于java的全文字笔迹核查索引擎的简要介绍

c)    搜索时西班牙语不区分轻重缓急写
 
d)    结果列表有相关度排序

Lucene不是三个整机的全文字笔迹查证索应用,而是多少个java语言写的全文字笔迹查验索引擎工具包,他能够很便利的放置到各类应用体系中完毕音讯的全文字笔迹核准索效率。

全文检索应用场景:
 
  * 新闻量必须非常大
 
  * 做二个全文字笔迹查证索的目的
 
      快速
 
      准确

2、全文字笔迹核实索完成机制

站内寻觅
 
平凡用于在大方多少出现的体系中,找寻您想要的素材。常见的有
 
a)    bbs的注重字寻找
 
baidu贴吧      林志玲  、胡汉三
 
b)    商品网址的追寻等
 
中关村在线    商品的名目、计算机硬件名称 (CPU)
 
c)    文件管理体系
 
对文本的寻找成效。Window的文本找寻
 
1.3.2笔直寻找
 
a)    是针对 有些行当的搜求引擎
 
b)    是寻找引擎的划分和延伸
 
c)    是针对网页库中的特地音信的结缘
 
d)    其性状是专、深、精,并具备行业色彩
 
e)    能够动用于购物搜索、房产寻觅、人才寻觅
 
1.1        全文字笔迹查证索与数据库寻觅的分化
 
1.4.1数据库的查找
 
类似:select * from  表名 where 字段名 like ‘%关键字%’
 
例如:select * from article where content like’%here%’
 
结果:  where  here shere
 
缺点:
 
1)    找寻效果比较不好
 
2)    在搜求的结果中,有大气的数据被搜寻出来,有成都百货上千多少是不曾用的。
 
3)    查询速度在大方数目标事态下是很难形成急迅的。
 
1.4.2全文字笔迹核准索
 
1)    寻觅结果按相关度排序:意味着只有前多少个页面前遭逢于用户来说是相比实用的,其余的结果与用户想要的答案很恐怕南辕北辙。数据库寻找是做不到相关度排序的。
 
2)    因为全文检索是选拔引索的法子,所以在进度上必将比数据库情势like要快。
 
3)    所以数据库不能够替代全文检索。  

Lucene的api输入输出结构很想数据库的表、记录、字段,因而相当多观念的施用中的文件、数据库能够很有益的把多少映射到Lucene的蕴藏结构中,大家能够把Lucene当成叁个帮衬全文索引的数据库系统。

Lucene 的详实介绍:请点这里
Lucene 的下载地址:请点这里

上边大家相比较一下Lucene和数据库

基于Lucene多索引进行索引和搜索 http://www.linuxidc.com/Linux/2012-05/59757.htm

Lucene                                                  database

Lucene 实战(第2版) 中文版 配套源代码 http://www.linuxidc.com/Linux/2013-10/91055.htm

目录数据源                    document(田野先生1,田野先生2....)..                            record(田野同志1,田野先生2...)..

Lucene 实战(第2版) PDF高南开语版 http://www.linuxidc.com/Linux/2013-10/91052.htm

| inder                                                      | sql:insert

接纳Lucene-Spatial完结并轨地理地方的全文检索 http://www.linuxidc.com/Linux/2012-02/53117.htm

lucene index                                          database index

Lucene Hadoop 布满式寻觅运转框架 Nut 1.0a9 http://www.linuxidc.com/Linux/2012-02/53113.htm

|search                                                    |select

Lucene Hadoop 遍布式寻觅运营框架 Nut 1.0a8 http://www.linuxidc.com/Linux/2012-02/53111.htm

Hits(docuemnt(field1,field2...)..)                results(record(field1,field2...)..)

Lucene Hadoop 布满式寻觅运转框架 Nut 1.0a7 http://www.linuxidc.com/Linux/2012-02/53110.htm

贰个document有七个字段组成,是多少个急需进行索引的单元,hits查询结果集。

Project 2-1: 配置Lucene, 建设构造WEB查询系统[Ubuntu 10.10] http://www.linuxidc.com/Linux/2010-11/30103.htm

数据库索引能够大大的援救大家升高查询的进程,而索引之所以相对查询起高校职能,原因就在于它是排好序的,对于检索系统来讲基本是主旨是四个排序问题。

全文字笔迹查验索只是贰个定义,而实际完成有大多框架,lucene是内部的一种。Lucene的主页。本文用的是3.0.1版本。
 
互连网找出结构图  

数据的目录不是为全文索引设计的,所以在sql中使用like %拓展模糊查询时,数据库的目录是不起功用的,对于需求对外提供快速服务的劳务的服务器来讲,那是个沉重的重伤。所以建设构造三个便捷的检索系统的重视时确立多少个与反向索引类似的机制,将数据源排序存储的同期,有另二个排好序的关键词列表,用于存款和储蓄关键词和剧情的映照关系。检索进度正是把模糊查询形成多个能够应用索引的高精度查询的逻辑组合的历程,进而大大的进步了珍贵词查询到的功用,所以全文字笔迹核查索难题总结到第便是一个排序难点。

图片 1

Lucene最基本的特征是透过独特的目录结构完毕了理念数据库十分短于的全文索引机制。

说明:
 
1)    当用户展开www.baidu.com网页搜索某个数据的时候,不是直接找的网页,而是找的百度的索引库。索引Curry包罗的源委有索引号和摘要。当大家开垦www.baidu.com时,看到的就是摘要的内容。
 
2)    百度的索引库的目录和网络的某多个网址对应。
 
3)    当用户数量要查询的重大字,重返的页面首先是从索引库中拿走的。
 
4)    点击每四个招来出来的开始和结果展开连锁网页寻找,那年才找的是互连网中的网页。
 
2.2 lucene的光景结构框图  

3、Lucene与数据库的歪曲查询的总结比较:

图片 2

目录:Lucene将数据源中的数据通过全文索引一第一建工公司立反向索引。数据库对于like模糊查询来说,在数据检索时索引根本用持续的。

说明:
 
1)    在数据库中,数据库中的数据文件存款和储蓄在磁盘上。索引库也是平等,索引库中的索引数据也在磁盘上存在,大家用Directory那几个类来陈诉。
 
2)    大家得以经过API来落到实处对索引库的增、删、改、查的操作。
 
3)    在数据库中,各个数码格局都能够富含为一种:表。在索引库中,种种数据格局也足以抽象出一种多少格式为Document。
 
4)    Document的结构为:Document(List<Field>)
 
5)    Field里寄存二个键值对。键值对都为字符串的款式。
 
6)    对索引库中索引的操作实际也等于对Document的操作。

结果输出:Lucene通过特意的算法,将相称度最高的前100条结果集输出,结果集是缓冲式的小批量读取。而数据库再次来到全部的结果集,在合营条款多的时候,供给大批量的内部存款和储蓄器贮存那一个一时结果集。

越来越多实际情况见请继续读书下一页的美貌内容: http://www.linuxidc.com/Linux/2014-06/102856p2.htm

从地方能够总括出:Lucene和database最大的不等的在于让与用户查询的数据相配的前100条结果满意98%上述用户的供给。

图片 3

4、Lucene的翻新之处

绝大大多的寻觅引擎都以用B树来维护索引,索引的更新会导致大量的io操作,Lucene在贯彻中对此稍微做了改革,不是保险贰个目录文件,而是在扩张索引的时候不断创立新的目录文件,然后定期的把这个小索引文件合併到原本的大的目录文件中,这样在不影响检索功能的前提下,升高了目录的频率。

Lucene 的详实介绍:请点这里
Lucene 的下载地址:请点这里

基于Lucene多索引举行索引和寻找 http://www.linuxidc.com/Linux/2012-05/59757.htm

Lucene 实战(第2版) 闽南语版 配套源代码 http://www.linuxidc.com/Linux/2013-10/91055.htm

Lucene 实战(第2版) PDF高清普通话版 http://www.linuxidc.com/Linux/2013-10/91052.htm

应用Lucene-Spatial达成并轨地理地方的全文字笔迹查验索 http://www.linuxidc.com/Linux/2012-02/53117.htm

Lucene Hadoop 布满式寻找运营框架 Nut 1.0a9 http://www.linuxidc.com/Linux/2012-02/53113.htm

Lucene Hadoop 布满式寻觅运转框架 Nut 1.0a8 http://www.linuxidc.com/Linux/2012-02/53111.htm

Lucene Hadoop 布满式寻觅运维框架 Nut 1.0a7 http://www.linuxidc.com/Linux/2012-02/53110.htm

Project 2-1: 配置Lucene, 创建WEB查询系统[Ubuntu 10.10] http://www.linuxidc.com/Linux/2010-11/30103.htm

本文永恒更新链接地址:http://www.linuxidc.com/Linux/2014-06/102854.htm

图片 4

版权声明:本文由威尼斯人app发布于电脑操作,转载请注明出处:Lucene:基于Java的全文检索引擎的简介