将Hadoop节点与第三方软件连接

时间:2014-06-10 13:21:19

标签: hadoop

我从Hadoop

了解到的

每当我向Hadoop集群提交代码时:

  1. 执行hadoop map函数并将属性计算添加到数据节点
  2. 我的map函数在本地数据的每个节点上执行
  3. 我的reduce函数在每个节点上执行
  4. 节点完成任务后,会将结果发送回主节点
  5. 执行hadoop reduce函数并聚合结果。
  6. 问题本身

    假设前面描述的步骤是正确的,那么从这个步骤改变第2步的要求是什么:

    public void map(Args args) {
        for(Arg arg : args)
            someCalculations(arg);    
    }
    

    进入这个:

    public void map(Args args) {
        executeOtherSofwareAndFetchResultst(args);
    }
    

    例如,其他软件是否需要HDFS兼容性?

1 个答案:

答案 0 :(得分:0)

映射器就像普通的Java实例一样。您可以使用映射器中的普通Java程序执行任何操作。 将它视为另一个Java实例,只要您将数据放入映射器,就不需要与HDFS的任何软件兼容性,因为映射器处理它而不是它内部的逻辑。