- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
使用 Apache Lucene 搜索文本
使用 Apache Lucene 搜索文本
/developerworks/cn/opensource/os-apache-lucenesearch/index.html
轻松为应用程序构建搜索和索引功能
Amol Sonawane, 资深软件工程师, EMC
Amol Sonawane 是一名高级软件工程师,拥有班加罗尔国际信息技术学院的研究生学位。他为许多领域设计和开发软件,比如供应链管理、企业应用程序集成和商业智能。他可以使 用 J2EE 技术和框架(Struts 和 Spring)开发应用程序。他与妻子 Anuja 居住在印度普内。除了编程,他还喜欢摄影、下棋和字谜。
简介:?本文将探讨 Apache Lucene —— 性能卓越、功能全面的文本搜索引擎库。我们将学习 Lucene 架构及其核心 API。学习如何使用 Lucene 进行跨平台全文本搜索、建立索引、显示结果,以及如何扩展搜索。
标记本文!
发布日期:?2009 年 9 月 14 日 级别:?初级 其他语言版本:?英文 建议:?0?(添加评论)
平均分 (共 0 个评分 )
简介
Lucene 是一个开源、高度可扩展的搜索引擎库,可以从 Apache Software Foundation 获取。您可以将 Lucene 用于商业和开源应用程序。Lucene 强大的 API 主要关注文本索引和搜索。它可以用于为各种应用程序构建搜索功能,比如电子邮件客户端、邮件列表、Web 搜索、数据库搜索等等。Wikipedia、TheServerSide、jGuru 和 LinkedIn 等网站都使用了 Lucene。
Lucene 还为 Eclipse IDE、Nutch(著名的开源 Web 搜索引擎)以及 IBM?、AOL 和 Hewlett-Packard 等公司提供搜索功能。Lucene 已经兼容许多其他编程语言,包括 Perl、Python、C++ 和 .NET。到 2009 年 7 月 30 日止,用于 Java? 编程语言的最新版 Lucene 为 V2.4.1。
Lucene 功能众多:
拥有强大、准确、有效的搜索算法。
计算每个文档匹配给定查询的分数,并根据分数返回最相关的文档。
支持许多强大的查询类型,比如 PhraseQuery、WildcardQuery、RangeQuery、FuzzyQuery、BooleanQuery 等。
支持解析人们输入的丰富查询表达式。
允许用户使用定制排序、过滤和查询表达式解析扩展搜索行为。
使用基于文件的锁定机制保护并发索引修改。
允许同时搜索和编制索引。
回页首
使用 Lucene 构建应用程序
如图 1 所示,使用 Lucene 构建功能全面的搜索应用程序主要涉及编制数据索引、搜索数据和显示搜索结果几个方面。
图 1. 使用 Lucene 构建应用程序的步骤
本文从使用 Lucene V2.4.1 和 Java 技术开发的样例应用程序中挑选了一些代码片段。示例应用程序为存储在属性文件中一组电子邮件文档编制索引,并展示了如何使用 Lucene 的查询 API 搜索索引。该示例还让您熟悉基本的索引操作。
回页首
为数据编制索引
Lucene 允许您为任何文本格式的数据编制索引。Lucene 可以用于几乎任何数据源以及从中提取的文本信息。您可以使用 Lucene 编制索引并搜索 HTML 文档、Microsoft? Word 文档、PDF 文件中存储的数据。编制数据索引的第一步是让数据变成一个简单的文本格式。您可以使用定制解析器和数据转换器实现这一点。
编制索引的过程
编制索引 是将文本数据转换为有利于快速搜索的格式。这类似于书本后面的索引:为您指出主题在书中出现的位置。
Lucene 将输入数据存储在名为逆序 索引的数据结构中, 该数据结构以索引文件集的形式存储在文件系统或内存中。大部分 Web 搜索引擎都使用逆序索引。它允许用户执行快速关键字查询,查找匹配给定查询的文档。在将文本数据添加到索引前,由分析程序(使用分析过程)进行处理。
分析
分析 是将文本数据转换为搜索基本单位(称为项(term))的过程。在分析过程中,文本数据将经历多项操作:提取单词、移除通用单词、忽略标点符号、将单词变为词根形式、将单词变成小写等等。分析过程发生在编制索引和查询解析之前。分析将文本数据转换为标记,这些标记将作为项添加到 Lucene 索引中。
Lucene 有多种内置分析程序,比如 SimpleAnalyzer、StandardAnalyzer、StopAnalyzer、SnowballAnalyzer 等。它们在标记文本和应用过滤器的方式上有所区别。因为分析在编制索引之前移除单词,它减少了索引的大小,但是不利用精确的
您可能关注的文档
最近下载
- 内地新疆高中班学生转学、休学审核表.pdf VIP
- GBT 18015.1-2017 数字通信用对绞或星绞多芯对称电缆 第1部分:总规范.pdf
- TJAASS 151-2024 水稻碳足迹评价方法.pdf VIP
- 新解读《GB_T 18015.1-2017数字通信用对绞或星绞多芯对称电缆 第1部分:总规范》最新解读.docx VIP
- 2022年苏州大学计算机科学与技术专业《计算机网络》科目期末试卷B(有答案).docx VIP
- 检验科仪器设备故障应急预案.docx VIP
- (27页PPT)K12教师试岗培训工作安排及其说明.pptx VIP
- 保姆带小孩合同协议书例文.pdf VIP
- 危重病人抢救应急演练方案.pdf
- XP-1A SF6定性检漏仪说明书.pdf VIP
原创力文档


文档评论(0)