资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,基于Lucene的轻量级全文检索的应用方案介绍,2005.12,Agenda,全文检索的实现原理介绍,全文检索工具,Lucene,的介绍,Lucene,的实践,相关参考资料的介绍,全文检索的实现原理,对于检索系统来说核心是一个排序问题。,它的核心关键是建立一个反向索引机制,将数据源比方多篇文章进行排序后存储的同时,有另外一个排好序的关键词列表,用于存储关键词=文章映射关系,利用这样的映射关系索引:关键词=出现关键词的文章编号,出现次数甚至包括位置:起始偏移量,结束偏移量,出现频率,检索过程就是把模糊查询变成多个可以利用索引的精确查询的逻辑组合的过程。,全文检索 数据库的like %keyword%,Lucene是什么?,Lucene不是一个完整的全文索引应用,而是一个用Java写的全文索引引擎工具包,它可以方便的嵌入到各种应用中实现针对应用的全文索引/检索功能。,Lucene的 Doug Cutting是一位资深全文索引/检索专家,Lucene的命名的由来是Doug这位大师妻子的名字,lucene的组成结构,对于外部应用来说索引模块(index)和检索模块(search)是主要的外部应用入口,/ 搜索入口/索引入口/ 语言分析器/ 查询分析器/ 存储结构/,底层IO/存储结构,/一些公用的对象,Lucene中文分词的实现,以中文为例:,对于中文来讲,全文索引首先还要解决一个语言分析的问题。现在常用的两种分析算法:一、自然语法即用词表切分,二、自动切分算法即用2元语法(bigram)。,目前比较大的搜索引擎的语言分析算法一般是基于以上2个机制的结合。,lucene支持第二种分词方法。,二元语法切分词组结果如下:,北京天安门 = 北京 京天 天安 安门。,实践Lucene,Lucene给我们提供很多封装良好的接口方便,我们的使用。,下面我们来演示一下Lucene的使用方法。,参见Lucene Quickstart,相关资料,Microsoft 全文搜索技术,基于Lucene/XML的站内全文检索解决方案,:/,Jakarta Lucene,:/,WebLucene,:/
展开阅读全文