開發者 | Apache软件基金会 |
---|---|
首次发布 | 1999年 |
当前版本 |
|
源代码库 | |
编程语言 | Java |
操作系统 | 跨平臺 |
类型 | 搜索及全文检索 |
许可协议 | Apache许可证 2.0 |
网站 | lucene |
Lucene是一套用于全文检索和搜尋的開放源碼程式庫,由Apache软件基金会支持和提供。Lucene提供了一個簡單卻強大的應用程式介面,能夠做全文索引和搜索。Lucene被广泛应用作搜索应用的标准基础库[2][3][4]。
Lucene现已被移植到其他编程语言,包括Object Pascal、Perl、C#、C++、Python、Ruby和PHP[5]。
Doug Cutting在1999年编写了Lucene[6],他是一位資深的全文索引及檢索專家,曾經是V-Twin搜索引擎的主要開發者,後來在Excite擔任高級系統架構設計師,目前從事於一些互联网底層架構的研究。他貢獻出Lucene的目標是為各種中小型應用程式加入全文檢索功能。Lucene最初可以从SourceForge网站的主页下载,它于2001年9月加入Apache软件基金会的Jakarta开源Java产品家族,并于2005年2月成为独立的顶级Apache项目。Lucene这个名字是Doug Cutting妻子的中间名,也是她外祖母的名字[7]。
Lucene以前包含了许多子项目,例如 Lucene.NET、Mahout、Tika and Nutch。这三个现在已经成为了独立的顶级Apache项目。
2010年3月,Apache Solr搜索服务器作为Lucene子项目加入,合并了开发者社区。
4.0版于2012年10月12日发布[8]。
2021年3月,Lucene更改了logo,Apache Solr再次成为顶级Apache项目,独立于 Lucene。
虽然理论上Lucene适用于任何需要全文索引和搜索功能的应用程序,但其主要是因为在Internet搜索引擎和本地单站点搜索实现中的实用性而受到认可[9][10]。
Lucene也被用于实现推荐系统[12]。例如,Lucene的'MoreLikeThis'类可以生成相似文档的推荐。在将“MoreLikeThis”基于向量的相似性方法与基于引用的文档相似性度量(例如共引和共引邻近度分析)进行比较时,Lucene的方法在推荐具有非常相似的结构特征和更窄相关性的文档上表现出色[13]。相比之下,基于引用的文档相似性度量往往更适合推荐更广泛相关的文档[13]。
Lucene本身只是一个索引和搜索库,不包含爬取和HTML解析功能。但是,以下的项目扩展了Lucene的功能:
維基教科書中的相關電子教程:Lucene |
Introductory article with Java code for search
|
|