我想抓取一个特定的论坛近实时和转储数据到hdfs如果不是hbase。
我听说ApacheNutch可以解决这个问题,但遗憾的是,它所需要的技术堆栈非常陈旧。我不想把hadoop从2.6降到更早的版本,把elasticsearch降到1.7/1.4,所以我把注意力转移到了风暴爬虫上。
既然我使用的是hadoop2.6、elasticsearch 2.0和hbase 1.1.3,有人能告诉我风暴爬虫0.9是否可以与它们一起使用吗?
我想抓取一个特定的论坛近实时和转储数据到hdfs如果不是hbase。
我听说ApacheNutch可以解决这个问题,但遗憾的是,它所需要的技术堆栈非常陈旧。我不想把hadoop从2.6降到更早的版本,把elasticsearch降到1.7/1.4,所以我把注意力转移到了风暴爬虫上。
既然我使用的是hadoop2.6、elasticsearch 2.0和hbase 1.1.3,有人能告诉我风暴爬虫0.9是否可以与它们一起使用吗?
2条答案
按热度按时间llew8vvj1#
因为你有一个特别的要求,以一种近乎实时的方式在论坛上爬行,nutch不是最好的技术来完成这一点。nutch是批量工作的,这意味着链接会被生成,然后被提取,然后被解析,但这种情况不会一次发生在一个链接上。另一方面,storm crawler基于ApacheStorm,这是一个免费的、开源的分布式实时计算系统。
storm crawler目前确实支持索引到elasticsearch 1.7.2(支持版本2,正在进行中)https://github.com/digitalpebble/storm-crawler/tree/es2/external/elasticsearch),目前不支持索引到hbase,您无法使用hadoop设置,因为它基于apachestorm。不过,storm crawler是“用于构建低延迟、可伸缩的web爬虫的资源集合”,因此您可以将自己的索引器bolt写入hbase中,这应该不会太难,并且可以重用所提供的其余资源,包括所需的实时爬网。
mwkjh3gx2#
@豪尔赫·路易斯已经回复了ElasticSearch2。有一个pull请求,我们正在测试它。至于hadoop,well stormcrawler不是基于它,而是基于ApacheStorm——因此得名。最后,hbase目前没有资源,但可以添加。你想用它做什么?我想这些文件会被编入索引。你想在那里保存关于URL的信息吗(比如nutch中的crawldb)?如果是这样,那么您也可以使用es来存储状态,请查看stormcrawler中的es模块以获取解释。