Nutch v Solr v Nutch+Solr
Nutch v Solr v Nutch+Solr
存在相关的 Question on Whosebug,但六年半前有人问过。从那时起,Nutch 发生了很多变化。基本上我有两个问题。
我们如何比较 Nutch 和 Solr?
什么情况下需要,为什么把这两者结合起来用于爬取比较好?它与在独立模式(或 hadoop)中使用它们中的任何一个有何不同?
目前Nutch只负责抓取网页,也就是访问一个网页,提取内容,找到更多的链接,然后重复这个过程(我跳过了中间很多复杂的东西,但希望你明白了)。
抓取过程的最后阶段是将数据存储在后端(ES/Solr 是 1.x 分支上支持的数据存储)。因此,在这一步中,Solr 开始发挥作用,在 Nutch 完成其工作后,您需要将数据存储在某个地方,以便能够在其之上执行查询:这是 Solr 的工作。
前段时间 Nutch 包含编写倒排索引的功能(如问题中所述),但决定(也是前段时间)弃用此功能以支持使用 Solr/ES(或任何您可以为其编写索引器插件的其他存储)。现在索引插件是可插入的,你可以为你想要的任何数据存储编写一个插件。
总结:Nutch是一个爬虫,Solr是Nutch存储爬取数据的搜索引擎。
Nutch 和 Solr 是两个不同的东西。 Nutch只是抓取网页并解析网页内容,而Solr负责索引,即在Solr与Nutch集成时存储Nutch抓取的内容。
当您在抓取网络时必须检索和存储数据时,您需要将 Solr 与 Nutch 集成。如果您不需要存储或索引任何东西,那么您就不需要 Solr。当您想存储 Nutch 爬取的数据然后对数据执行搜索时,Solr 很有用。
存在相关的 Question on Whosebug,但六年半前有人问过。从那时起,Nutch 发生了很多变化。基本上我有两个问题。
我们如何比较 Nutch 和 Solr?
什么情况下需要,为什么把这两者结合起来用于爬取比较好?它与在独立模式(或 hadoop)中使用它们中的任何一个有何不同?
目前Nutch只负责抓取网页,也就是访问一个网页,提取内容,找到更多的链接,然后重复这个过程(我跳过了中间很多复杂的东西,但希望你明白了)。
抓取过程的最后阶段是将数据存储在后端(ES/Solr 是 1.x 分支上支持的数据存储)。因此,在这一步中,Solr 开始发挥作用,在 Nutch 完成其工作后,您需要将数据存储在某个地方,以便能够在其之上执行查询:这是 Solr 的工作。
前段时间 Nutch 包含编写倒排索引的功能(如问题中所述),但决定(也是前段时间)弃用此功能以支持使用 Solr/ES(或任何您可以为其编写索引器插件的其他存储)。现在索引插件是可插入的,你可以为你想要的任何数据存储编写一个插件。
总结:Nutch是一个爬虫,Solr是Nutch存储爬取数据的搜索引擎。
Nutch 和 Solr 是两个不同的东西。 Nutch只是抓取网页并解析网页内容,而Solr负责索引,即在Solr与Nutch集成时存储Nutch抓取的内容。
当您在抓取网络时必须检索和存储数据时,您需要将 Solr 与 Nutch 集成。如果您不需要存储或索引任何东西,那么您就不需要 Solr。当您想存储 Nutch 爬取的数据然后对数据执行搜索时,Solr 很有用。