当前位置:大学毕业论文> 本科论文>材料浏览

关于全文检索论文范文写作 基于Lucene的全文检索与实现相关论文写作资料

主题:全文检索论文写作 时间:2024-01-21

基于Lucene的全文检索与实现,此文是一篇全文检索论文范文,为你的毕业论文写作提供有价值的参考。

全文检索论文参考文献:

全文检索论文参考文献 论文全文论文检索号怎么查论文检索报告文献检索网站

摘 要:Lucene是一个基于Ja 开发的,高效的、开源的全文索引引擎工具包.它使用简单,有良好的移植性,可以嵌入到各种系统及应用中.同时它也是强大的,实现了针对多种复杂文档的索引及检索.文章介绍分析了Lucene的系统结构,与关系型数据库的不同以及其实现机制,开发实现了一个基于Lucene的Web应用.

关键词:全文检索;Lucene;中文分词;Web实现

中图分类号:TP311 文献标志码:A 文章编号:1009-3044(2018)11-0095-03

Lucene是一个开源全文检索工具包,它具有优异的索引结构和良好的系统架构,提供了灵活的API函数接口和可以的数据存储结构,以实现具体的全文检索功能.Lucene完全由Ja JDK开发而成,没有用到任何第三方开发包,因此,Lucene也具有良好的跨平台特性.文章对Lucene进行了研究和分析,以此为基础设计实现了一个手机信息检索的Web应用.

1 全文检索引擎Lucene

1.1系统结构

由于是基于Ja设计的,Lucene也运用了面向对象的设计思想.首先,各种格式的文件被Lucene的对外接口导入之后,通过分析器,被转换成了一种中间索引文件,这种文件能在不同平台间兼容共享;之后,Lucene通过抽象将索引核心组成部分设计为抽象类,并提供具体平台的实现类,用于检索索引及保存结果;最后,以中间索引文件为数据源,使用某个特定平台上的方法,获得想查询的内容.此外,一些经常会使用的对象及方法,与具体平台相关的对象及方法,也封装为类,为查询提供方便.这样就使得Lucene成为了一个简单,高效,易扩展的检索引擎系统.

Lucene 由对外接口、索引核心、基础结构封装三大部分组成.系统结构图如图1 所示.

如图1所示,Lucene包含七个组成结构:

1) org.apache.lucene.analysis:语言分析器,主要用于分词

2)org.apache.lucene.document:存储索引的文档结构,类似oracle中的表结构

3) org.apache.lucene.index:索引管理,主要包括建立,删索引除等

4) org.apache.lucene.search:检索管理,提供检索方法,并根据查询条件,检索结果

5)org.apache.lucene.queryParser:查询分析器,根据关键词及其相互关系,提供自定义检索

6)org.apache.lucene.store:数据存储管理,主要包括底层I/O操作

7)org.apache.lucene.util:提供一些工具类

1.2 与关系型数据库的对比

一般来说,信息可分为结构化信息和非结构化信息.结构化信息指的是具有固定格式和长度的信息;而非结构化信息指的是不定长,无格式的信息.现实生活中,大部分信息都是非结构化的,比如HTML页面,电子邮件等.

关系型数据库,如oracle,它们在处理结构化信息时,有着高效快速的特点.但是在处理非结构化信息时,由于结构模型等原因的限制,往往力不从心.而Lucene就能夠处理这些非结构化信息,它通过将这些文本数据解析成中间格式,再进行索引查询.

1.3 检索实现机制

Lucene中有四个最基本的概念,分别是索引(index), 文档(document), 域(field)和项(term).它们是层层包含,层层递进的.通常,一个索引,包含一些序列的文档;一个文档,包含一些序列的域;一个域,包含一些序列的项;一个项,包含一些序列的最低层的字符.项是静态存储的,这样就会使得搜索更方便,更有效率.

一般我们平时搜索文件,通常是以文件为单位,每个文件中又都记录着每个字的位置信息,进行关键字查找时,顺序扫描每个文件,找到关键字在文档中出现过几次,在什么位置,从而确定我们所需要的文件,这是索引方式中的正向索引.而Lucene使用的是索引方式中的反向索引,是以关键字为单位进行索引,找到这个关键字包含在几个文件中,记录出现的位置.反向索引机制的应用,使Lucene的检索效率更高.

1.4 中文分词

分词是文本挖掘的基础与关键.由于语言的不同特点,英文文档本身就是由一个个意思明确的英文单词组成的,而对于中文文档来说,是由一个个汉字组成的,汉字之间互相组合,又可能产生不同的语意.

所以,Lucene自带的分词器,对英文能够进行较为准确的分词,但在中文分词方面效果并不理想.为了使系统能更好地进行中文分词,处理中文信息,本文采用了IKAnalyzer作为分词器.

IKAnalyzer是一个开源的,基于Ja开发的轻量级的中文分词工具包,是结合词典分词和文法分析算法的中文分词组件.它具有以下特点:1)支持中英文,数字混合分词;2)具有高速处理能力;3)能自定义用户字典;4)支持细粒度和智能分词两种切分模式.

2 手机信息检索系统的实现

本系统采用的是 MyEclipse10 + Struts2 + Tomcat6 的开发环境.

2.1 构建文本库

图2的数据是从中关村手机频道中整理的手机部分信息,包括厂商,型号,处理器,系统,内存容量,屏幕尺寸,摄像头最高像素,报价,特点等,组成以TAB分隔的tsv文件.

2.2 创建索引

一般全文检索有两个过程,创建索引和搜索索引.由此可见,索引是全文检索引擎中的关键,只有建立了索引才能进行全文检索.Lucene采用了文档(document)和域(field)来组织各种数据源.这里,我们可以把文档(document)想象成一个新闻HTML页面,把URL,新闻标题,作者,发布时间,正文等组成部分看做域(field),再根据其他配置信息,进行相应处理,创建索引.

结论:关于对不知道怎么写全文检索论文范文课题研究的大学硕士、相关本科毕业论文全文检索论文开题报告范文和文献综述及职称论文的作为参考文献资料下载。

安全五级检索体系构建
蒙牛乳业(集团)股份有限公司(以下简称“蒙牛乳业”)成立于1999年8月,总部设在内蒙古自治区呼和浩特市和林格尔盛乐经济园区,是国家农业产业化重。

基于档案管理电子化分级检索系统
摘 要:随着经济社会的快速发展,我国的科技水平到达顶峰,高科技产品以疯狂的速度席卷我国的整个市场。科学技术的创新给一个时代带来了重要性的一次跨越。

关于网络环境下数字图书馆信息检索
摘 要:数字图书馆是计算机领域综合发展重要成果,它实现了文献信息的整合和优化,提高了信息查询的效率和实用性,促进信息的传播和共享。关键词:数字。

大数据结构化数据存储检索系统
摘 要:本文结合大数据结构化数据存储检索系统的设计思想并借鉴了云存储中常用的数据管理方式,建立面向结构化大数据存储检索系统,系统支持结构化数据的。

论文大全