我从哪里开始学习Lucene.NET Solr Hadoop和MapReduce?

时间:2010-08-15 14:14:28

标签: lucene solr lucene.net hadoop mapreduce

我是.NET开发人员,我需要学习Lucene,这样我们就可以运行一个非常大规模的搜索服务来删除最终用户无权访问的条目。 (即,用户可以搜索清除级别为3或更高,但没有清除级别2或1的所有文档)

我从哪里开始学习,我应该考虑哪些产品?说实话,我有点不知所措,但我决心把它全部弄清楚......最终。

2 个答案:

答案 0 :(得分:1)

如果您想要一本涵盖Lucene所有基础知识的书籍,请考虑“Lucene in Action”。即使代码示例是Java,您也可以轻松地将它们移植到.NET。当然,网上也有大量的资源,例如SO和Lucene邮件列表,它们可以帮助你。

对于您描述的项目,您应该查看Solr,因为它抽象了许多可伸缩性等问题,并且通过Solrnet可以轻松地集成到您的.NET应用程序中。要限制某个级别的访问,您的索引文档应包含一个名为“Level”的字段(比如说),并在用户查询的后台,使用布尔查询构造附加“Level:Level-1”查询。

在这个阶段,我的建议是远离您的项目的Hadoop(Apache Map-reduce实施)并坚持使用Solr。如果你热衷于了解它。它也有一本非常有用的书,你猜对了它“Hadoop In Action”(也来自曼宁出版社)。

答案 1 :(得分:1)

您似乎对每个项目(Lucene / Solr / Hadoop / etc)的作用感到困惑。所以要做的第一件事就是了解每个项目的目的。阅读有关它们的文档和博客。如果可能的话,购买和阅读有关它们的书籍。

例如,MapReduce和Hadoop与您的安全要求无关。 Hadoop是一个分布式可扩展计算平台。但是Solr is scalable on its own。您可能希望将Hadoop用于distribute a crawler though (e.g. Nutch)