Lucene漫谈--入门及介绍.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Lucene漫谈 --入门及介绍 ZekChang Twitter:@ZekChang Mail:zekchang@ Outline Lucene是什么? Lucene能做什么? Lucene怎样做到这些? 一个非常简单的搜索引擎 Part One:什么是Lucene Keywords Lucene: 1、搜索引擎 2、全文信息检索 3、非完整应用 4、工具包 5、基于Java 6、开源项目 Summary Apache?Lucene是一个基于Java全文搜索引擎,利用它可以轻易地为Java软件加入全文搜寻功能。 Lucene不是一个完整的搜索应用程序,而是一个基于 Java 的全文信息检索工具包,为你的应用程序提供索引和搜索功能,可以方便的嵌入到各种应用中实现针对应用的全文索引/检索功能。 Lucene?目前是 Apache Jakarta 家族中的一个开源项目。也是目前最为流行的基于 Java 开源全文检索工具包。? History 贡献者: Doug Cutting是一位资深全文索引/检索专家,曾经是V-Twin搜索引擎(Apple的Copland操作系统的成就之一)的主要开发者。作为Lucene和Nutch两大Apach Open Source Project的始创人(其实还有Lucy, Lucene4C 和Hadoop等相关子项目),Doug Cutting 一直为搜索引擎的开发人员所关注。他终于在为Yahoo以Contractor的身份工作4年后,于06年正式以Employee的身份加入Yahoo。他贡献出的Lucene的目标是为各种中小型应用程序加入全文检索功能。 发展历程: 最先发布在作者自己的,后来发布在Source Forge,2001年年底成为APACHE基金会jakarta的一个子项目:/lucene/ Tip: Lucene VS Nutch Lucene是一个提供全文文本搜索的函数库,它不是一个应用软件。 它提供很多API函数让你可以运用到各种实际应用程序中。 Nutch是一个建立在Lucene核心之上的Web搜索的实现,它是一个真正的应用程序。 Part Two:Lucene能做什么   Lucene 其他开源全文检索系统 增量索引和批量索引 可以进行增量的索引(Append),可以对于大量数据进行批量索引,并且接口设计用于优化批量索引和小批量的增量索引。 很多系统只支持批量的索引,有时数据源有一点增加也需要重建索引。 数据源 Lucene没有定义具体的数据源,而是一个文档的结构,因此可以非常灵活的适应各种应用(只要前端有合适的转换器把数据源转换成相应结构), 很多系统只针对网页,缺乏其他格式文档的灵活性。 索引内容抓取 Lucene的文档是由多个字段组成的,甚至可以控制那些字段需要进行索引,那些字段不需要索引,近一步索引的字段也分为需要分词和不需要分词的类型: ?? 需要进行分词的索引,比如:标题,文章内容字段 ?? 不需要进行分词的索引,比如:作者/日期字段 缺乏通用性,往往将文档整个索引了 Lucene的创新 语言分析 通过语言分析器的不同扩展实现: 可以过滤掉不需要的词:an the of 等, 西文语法分析:将jumps jumped jumper都归结成jump进行索引/检索 非英文支持:对亚洲语言,阿拉伯语言的索引支持 缺乏通用接口实现 查询分析 通过查询分析接口的实现,可以定制自己的查询语法规则: 比如: 多个关键词之间的 + - and or关系等   并发访问 能够支持多用户的使用   Lucene的创新 本质 来一点想象: 站内新闻索引,建立资料库 高效的对一个数据库进行全文检索 利用其扩展接口,做自己的搜索引擎 …… Performance Powered By Lucene /jakarta-lucene/PoweredBy Part Three:Lucene In Action! 几个重要概念 analyzer? ??????? Analyzer是分析器,它的作用是把一个字符串按某种规则划分成一个个词语,并去除其中的无效词语。 document? ??????? 用户提供的源是一条条记录,它们可以是文本文件、字符串或者数据库表的一条记录等等。一条记录经过索引之后,就是以一个Document的形式存储在索引文件中的。用户进行搜索,也是以Document列表的形式返回。 field? ??????? 一个Document可以包含多个信息域,例如一篇文章可以包含“标题”、“正文” 等信息域,这些信息域就是通过Field在Document中存储的。 ?Field有两个属性可选:

文档评论(0)

微微 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档