【问题标题】:Apache nutch in distributed mode not going to crawl from web分布式模式下的 Apache nutch 不会从网络爬取
【发布时间】:2015-12-22 09:53:24
【问题描述】:

我正在使用 apache nutch 2.3、hadoop 1.2.1(3 个数据节点)、hbase 0.94、solr 4.8。为了运行 apache nutch 是分布式模式。我做了以下步骤

  1. 转到运行时/部署目录
  2. 将 apache-nutch-2.3.jar 复制到部署目录
  3. 运行这个命令runtime/deploy/bin/crawl urls/hbase_tablehttp://solrHost:8983/solr1

其中 hbase_table 是 nutch 将存储数据的 hbase 表的名称。 命令启动后,每个 phbase 的 Mapreduce 作业都会启动,即注入、生成、fetech、dedup、sorlrindex。所有这些 mapreduce 作业都没有任何错误地完成。但是当我从 HDFS 检查时,hbase_table 中没有数据。配置问题出在哪里。不幸的是,分布式模式指南中的 Apache nutch 并不完全可用(根据我的搜索)

【问题讨论】:

    标签: java hadoop solr nutch


    【解决方案1】:

    我也有同样的问题,但软件版本有点新。看到这个帖子Nutch Solr dataimport handler?

    作为一种解决方法,您可以通过打开 hbase shell 并运行这些命令来计算 hbase 中的记录

    > list (this will make sure the table is getting created.)
    > count 'hbase_table' (this will give you records in it.)
    

    除了批量运行所有命令之外,还可以尝试单独运行它们。
    否则你可以粘贴日志文件。

    【讨论】:

    • 我将 hive 与 hbase 一起使用。通过使用时间戳信息,我现在能够确定没有抓取新数据。所以这不是计数问题
    【解决方案2】:

    在apache nutch的分布式模式下,你必须检查你的tasktracker的日志。抓取的文档的详细信息应该在那里,而不是在 mapreduce 日志中。它的 url 会像(如果你使用默认配置)

    http://data-node-ip:50060/logs/hadoop-{user-name}-tasktracker-{machine-name}.log

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-08
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多