Apache Lucene与Lucene.Net——全文检索服务器

来源:互联网 发布:mac给视频添加srt字幕 编辑:程序博客网 时间:2024/05/21 14:03

十年前,在Windows世界中使用开源项目简直是不可想象的一件事。现在.NET程序员在Java平台上验证并开发的企业级软件世界中也开始觉醒了。今天让我们一起来看看流行的全文检索引擎——Apache Lucene与Lucene.Net。

Apache Lucene与其兄弟Lucene.Net是经过了大规模测试的产品,他们已经为一些著名站点如Wikipedia、CNET及Monster.com提供了搜索功能。因此,没人会怀疑其功能与未来的发展。

Lucene并不是一个爬行搜索引擎,也不会自动地索引内容。我们得先将要索引的文档中的文本抽取出来,然后再将其加到Lucene索引中。标准的步骤是先初始化一个Analyzer、打开一个IndexWriter、然后再将文档一个接一个地加进去。一旦完成这些步骤,索引就可以在关闭前得到优化,同时所做的改变也会生效。这个过程可能比开发者习惯的方式更加手工化一些,但却在数据的索引上给予你更多的灵活性。

我们可以借助于一个对象模型来完成搜索,通过查询来建立条件。其次,Lucene可以解析并执行(可能由最终用户输入的)普通文本搜索字符串。使用.NET 3.5或后续版本的.NET开发者还有第三种选择:LINQ to Lucene。其项目主页上有一张图清晰地描述了Lucene的搜索语法与相应的LINQ to Lucene语法的区别。

如果你想试一下,可以参考Andrew Smith对Lucene.NET的介绍。无论你选择.NET还是Java版本,看看Erik Hatcher对Lucene的介绍都会大有好处。

查看英文原文:Apache Lucene and Lucene.Net – Full Text Search Servers