一、简介
Lucene 是一个基于 Java 的全文信息检索工具包,它不是一个完整的搜索应用程序,而是为你的应用程序提供索引和搜索功能。Lucene 目前是 Apache Jakarta 家族中的一个开源项目。也是目前最为流行的基于 Java 开源全文检索工具包。
目前已经有很多应用程序的搜索功能是基于 Lucene 的,比如 Eclipse 的帮助系统的搜索功能。Lucene 能够为文本类型的数据建立索引,所以你只要能把你要索引的数据格式转化的文本的,Lucene 就能对你的文档进行索引和搜索。比如你要对一些 HTML 文档,PDF 文档进行索引的话你就首先需要把 HTML 文档和 PDF 文档转化成文本格式的,然后将转化后的内容交给 Lucene 进行索引,然后把创建好的索引文件保存到磁盘或者内存中,最后根据用户输入的查询条件在索引文件上进行查询。不指定要索引的文档的格式也使
Lucene 能够几乎适用于所有的搜索应用程序。
二. 为什么要使用全文检索技术
在网站、论坛或者应用系统中,我们经常需要用到站内搜索/论坛内容搜索的功能来查找指定的关键字。在网站的后台存储中,信息可能存储的地方主要有:数据库表,HTML静态页面文件,word、pdf、excel、ppt、txt等文件中。在企业的网站或者应用系统中,大量的动态信息是存储在数据库中的,例如公文信息、新闻内容、知识库、商务信息等都是存储在数据库表中的。如果我们使用数据库的like‘%关键字%’这种方式查找信息显然不可取,因为数据库对于like‘%关键字%’这种查询模式,数据库索引是起不到效果的,这样会严重影响到查询的效率。所以对于数据库的全文检索,也应使用分词技术,在增加表记录的时候,将相关字段采用Lucene的分词技术增加到索引库中,并同时将记录的ID和对应的访问链接也同时加入到索引库中,我们就可以在查询关键字的时候,将对应的信息访问连接同时查找出来,这样就起到全文检索的效果。
三:全文检索的过程
全文检索的过程分为2大过程:索引创建(indexing)和搜索索引(Search)
1、索引创建:就是将现实世界中所有的结构化和非结构化数据提取信息,创建索引的过程。(结构化数据:结构化数据(即行数据,存储在数据库里,可以用二维表结构来逻辑表达实现的数据; 非结构化数据:包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像和音频/视频信息等等)
2、搜索索引:就是将得到用户的查询请求,搜索创建的索引,然后返回结果的过程。
下图是基于Lucene搜索引擎的全文检索过程
四:基于Lucene的全文检索体系结构和技术
分享到:
相关推荐
Eclipse工程文件,全文检索 lucene-5.2.1 入门Eclipse工程实例,福利放送,与lucene3结果比对
全文检索lucene入门,结合全文检索原理分析lucene.帮助你更快掌握lucene
包含最新lucene5.2.1的入门经典案例,以及程序中所需的lucene-core-5.2.1.jar、lucene-analyzers-common-5.2.1.jar等几个jar包。代码可运行。
全文检索系统(Lucene)LuceneDemoSrc.rar 很好的入门学习资料
学习全文检索的最佳入门之原始代码(非 Lucene)。全文检索系统的实现技术分为三个方面:关系型全文检索系统、层次型全文检索系统、面向对象的全文检索系统及自动标引技术。 针对全文数据系统的构建,提出全文检索...
NULL 博文链接:https://peihexian.iteye.com/blog/2075514
Lucene3.0和Lucene2.0API有多处改动,该实例用Luence3.0实现
有关lucene入门学习的PPT以及算法和倒排原理
全文检索概念、原理、Lucene&Solr的实践。
Lucene入门精讲视频教程QQ截图20191025020202.png?x-oss-process=style/pnp8(39.97KB,下载次数:225)下载附件2019-10-2502:02上传〖课程介绍〗:Lucene是apache下的一个开放源代码的全文检索引擎工具包。提供了完整的...
2、Lucene实现全文检索的流程 a) 创建索引 b) 查询索引 3、配置开发环境 4、创建索引库 5、查询索引库 6、分析器的分析过程 a) 测试分析器的分词效果 b) 第三方中文分析器 7、索引库的维护 a) 添加文档 b) 删除文档 ...
lucene入门实战.txt Lucene 的学习 .txt Lucene-2.0学习文档 .txt Lucene入门与使用 .txt lucene性能.txt 大富翁全文索引和查询的例子程序.txt 关于lucene2.0的创建、检索和删除功能的完整实现.doc web...
最受欢迎的java开源全文搜索引擎开发工具包。 提供了完整的查询引擎和... Lucene的目的是为软件开发人员提供一个简单易用的工具包, 以方便在目标系统中实现全文检索功能, 或者是以此为基础建立起完整的全文检索引擎。
lucene3的SSH整合,全文检索lucene的快速入门。
这是一个朋友的学习成果,传到网上,大家分享,方便自己,方便别人. 作者:xiexie
基于Java的全文检索引擎简介,Lucene快速入门
一、全文检索的简介 1、全文检索的介绍 1.1、数据分类 结构化数据:格式固定、长度固定、数据类型固定,如:数据库数据。 非结构化数据:格式不固定、长度不固定、数据类型不固定,如:word文档、pdf文档、邮件、...
java实战