嗨,伙计们,我有两个问题,我不知道会发生什么,我没有一个系统来测试它:
我有一个包含4个文件的目录,其中一个文件是空的。当这4个文件作为输入时,我可以从hadoop map reduce得到多少map任务。
我得到了一个包含4个子文件夹的目录,其中包括3个文件(一个文件夹是空的)当父文件夹是map reduce程序中的输入时,我从hadoop map reduce获得了多少map任务?
**在我所有的问题中,文件都小于块大小。
嗨,伙计们,我有两个问题,我不知道会发生什么,我没有一个系统来测试它:
我有一个包含4个文件的目录,其中一个文件是空的。当这4个文件作为输入时,我可以从hadoop map reduce得到多少map任务。
我得到了一个包含4个子文件夹的目录,其中包括3个文件(一个文件夹是空的)当父文件夹是map reduce程序中的输入时,我从hadoop map reduce获得了多少map任务?
**在我所有的问题中,文件都小于块大小。
2条答案
按热度按时间gdx19jrr1#
hadoopmr作业将根据作业的块/输入分割数生成Map器的数量。在这种情况下,假设文件大小小于块大小,则每个文件只有1块
配方:
Number of Mapper : Number of input splits
对于1:你向job先生提供4个文件。这意味着mr job必须读取4个块,因此它将生成4个Map器。根据集群硬件的不同,这4个Map器可以并行运行,也可以一次运行一个或两个Map器。注意:inputsplitter不会考虑文件是否为空。它也会为空文件生成一个Map器
对于2:您总共提供3个文件(空子文件夹不计算在内)。所以你的mr工作会产生3个mapper。
希望这对你有帮助。
5q4ezhmt2#
4个Map器(拆分器不关心一个文件是否为空)
3*3=9Map器(空文件夹不包含任何文件=没有Map器)