Hadoop中有多少映射任务?

Hadoop中有多少映射任务?,hadoop,dictionary,reduce,Hadoop,Dictionary,Reduce,大家好,我有两个问题,我不知道会发生什么,我没有一个系统来测试它: 我有一个包含4个文件的目录,其中1个文件为空。当这4个文件作为输入时,我可以从Hadoop Map Reduce获得多少映射任务 我得到了一个包含4个子文件夹的目录,其中包括3个文件(一个文件夹为空)。当父文件夹是我的map Reduce程序的输入时,我可以从Hadoop map Reduce获得多少映射任务 ** 在我所有的问题中,文件都小于块大小 4个映射器(拆分器不关心一个文件是否为空) 3*3=9个映射器(空文件夹不包含

大家好,我有两个问题,我不知道会发生什么,我没有一个系统来测试它:

  • 我有一个包含4个文件的目录,其中1个文件为空。当这4个文件作为输入时,我可以从Hadoop Map Reduce获得多少映射任务

  • 我得到了一个包含4个子文件夹的目录,其中包括3个文件(一个文件夹为空)。当父文件夹是我的map Reduce程序的输入时,我可以从Hadoop map Reduce获得多少映射任务

  • ** 在我所有的问题中,文件都小于块大小

  • 4个映射器(拆分器不关心一个文件是否为空)
  • 3*3=9个映射器(空文件夹不包含任何文件=没有该映射器)

  • Hadoop MR作业将根据作业的块数/输入分割数生成映射器数。 在这种情况下,假设文件大小小于块大小,则每个文件只有1个块

    公式:
    映射器的数量:输入拆分的数量

    对于1:您向MR job提供4个文件。这意味着MR job必须读取4个块,因此它将生成4个映射器。这4个映射器可以并行运行,也可以一次一个或两个运行,具体取决于集群硬件

    注:InputSplitter将不考虑文件是否为空的事实。它还将为空文件生成1个映射器

    对于2:您总共提供3个文件(空子文件夹不计算在内)。所以你的MR工作将产生3个映射器

    希望这对你有帮助