我已经进行了云计算,并在Mapreduce中创建了一个用于天气分析的项目。为此,我在笔记本电脑中安装了以下软件。

  • Oracle Virtualbox
  • HortonWorks沙盒

  • 我选择了Redhat Linux,并分配了2 GB作为主内存。我使用了来自沙盒站点的hadoop镜像,并使用virtualbox加载了它。如果我的理解是正确的,则会从我的系统中分配2 GB的内存,而MapReduce作业将在我的本地计算机上完成。我在这一点上正确吗?

    我创建了MapReduce程序并在沙箱中运行了它。它工作正常,我得到了期望的输出。
  • 对于我的工作,作业跟踪器显示使用了8个映射器,而对于减少对象使用了一个reducer。因此,这8个映射器基本上是我2 GB主内存的8个分割区,它们被用作处理数据的映射器。

  • 如果上述说法正确,为什么我只看到一个 reducer ?

    如果映射器来自沙盒,它们是否具有像Amazon的EMR这样的服务器?

    最佳答案

    抱歉,我没有完全了解您要问的问题。您所提出的问题看起来更像是帖子的标题,而不是问题。

    映射器和化简器是MapReduce framework的组成部分。 Hortonworks只是提供自定义Hadoop发行版的供应商之一。这些不同的Hadoop风格之间存在某些差异,但是Mapper和Reducer创建的标准到处都是相同的。



    首先,建议的内存是4GB

    是的,它将从运行virtualbox的计算机上分配。当virtualbox在“此”计算机上运行时,您还能从哪里获得资源? MR作业的运行位置与分配的内存有什么关系?使用沙箱时,它们将在沙箱中运行。



    8个映射器是您的Mapper代码的8个实例,它们正在处理8个输入数据拆分和NOT 8个内存拆分,或其他任何处理。

    If the mappers are from sandbox, do they have servers like Amazon's EMR?
    

    对我来说这是一个总的保镖。请改一下。

    关于hadoop - 沙盒-确定了映射器和还原器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17480421/

    10-16 05:26