hadoop - 默认/在hadoop 1.x中查找映射器和化简器的数量

标签 hadoop mapreduce

有人可以帮助我理解以下与Hadoop 1.x相关的问题吗?

  • 说我只有一个节点,其中我具有8 GB RAM和40 TB硬盘以及四核处理器。块大小为64 MB。我们需要处理4 TB的数据。
    我们如何确定映射器和简化器的数量?

    有人可以详细解释吗?如果需要考虑其他任何参数,请告诉我。
  • 说我在一个群集中有10个数据节点,每个节点都具有8 GB的RAM和40 TB的带四核处理器的硬盘。块大小为64MB。我们需要处理40 TB数据。我们如何确定映射器和简化器的数量?
  • 具有四核处理器的数据节点中的映射器和化简器插槽的默认编号是多少?

  • 非常感谢,
    曼尼什

    最佳答案

    映射器数=拆分数。
    输入文件将分为多个部分。每个拆分将具有一组记录。平均而言,每个拆分的块大小为一个(大于64 MB)。因此,在您的情况下,您将有大约62500个映射器(或拆分器)(4TB / 64)。您还可以选择提供可配置的输入分割大小。通常,这是在一次读取整个文件时完成的,您可以决定如何处理记录。

    reducer 数量=映射器输出中唯一键的数量。您可以通过在作业类中或在jab running命令中配置 reducer 的数量来选择 reducer 的数量。上面的数字基于默认的哈希分区程序。您可以创建自己的分区程序,该分区程序可以确定 reducer 的数量。

    关于hadoop - 默认/在hadoop 1.x中查找映射器和化简器的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33151958/

    相关文章:

    eclipse - 在 Eclipse 中调试 MapReduce(Hadoop 2.2 或更高版本)

    hadoop - 在 HDFS 中写入文件的剖析

    hadoop - 通过 map reduce 中的 map 函数的文件

    hadoop - 当我运行带有多个对象的创建请求时,Hadoop Hive保持卡住

    hadoop - HBASE 与 HIVE : What is more suitable for data that is uniquely defined by multiple fields?

    hadoop - Phoenix:将“字符串”列转换为“整数”列

    javascript - MongoDb - 重新加入分割的 MapReduce 任务

    Hadoop 映射但不减少

    java - 线程 "main"java.lang.VerifyError : Bad type on operand stack 中的异常

    java - 在 Talend Open Studio for Data Integration 中一次处理一组行