3

我需要基于 Azure/Lucene.NET 实现的搜索索引。话虽如此,我对 Solr 和 Hadoop 或它们为 Linux 人群提供的东西知之甚少。

由于我不知道我前面的学习曲线,我会告诉你我在寻找什么,也许你可以告诉我应该如何度过我的时间。

我有兴趣从我们的系统中索引越来越多的电子邮件。在发送或接收消息时,它们需要是可搜索的。这意味着索引可能会变得巨大,这就是我们关注云存储的原因。考虑到我熟悉 Azure,管理建议我们使用 Lucene.NET。

您认为什么是我消磨时间的最佳方式:研究如何让 Lucene.NET 为我的文档编制索引,或者查看 Solr/Hadoop 的相同实现。

4

2 回答 2

1

在不了解您的源语料库规模的情况下(我们在近乎实时的应用程序中运行几个 TB),我可以分享我们的一些经验。我们主要是一家 .NET 商店,我们发现使用 Solr 非常容易,使用 SolrNet 等工具,并且为我们的开发人员提供了非常简单的学习曲线。

使用 Solr 的优点很多:从分面等显而易见的优点,如果您需要一个简单、灵活的 API 等等;事实上,它拥有更活跃的社区并拥有最新最好的功能和修复(参见Lucene.net)。重要的是,我们可以很容易地使用 Solr 与商用机器进行线性扩展(抱歉无法与使用云进行比较),但考虑到我们用于分片的那种机器的成本(几乎为零),我无法想象使用 Azure 或AWS 会更便宜。

希望有帮助。

于 2010-08-13T23:50:56.123 回答
1

如果您可以通过 HTTP 与索引机器通信,我建议您使用 Solr。只需更改配置文件,您就可以非常轻松地设置 Solr 服务器,而无需任何编程。它可以很好地扩展,请参阅:扩展 Lucene 和 Solr。目前正在开发的是Solr Cloud,它将使 Solr 的扩展更容易,并支持一些类似 hadoop 的特性。

于 2010-08-15T06:14:36.143 回答