我的hadoop程序使用一个映射器,它将输入数据分成一定数量的部分,这些部分在/usr/countcomputers.txt
文件中设置(由mapper函数读取)。此外,一部分到达每个减速器。因此,/usr/countcomputers.txt
文件中设置的数字定义了减速器的数量。在这方面我提出了一个问题:Reducer仅在启动了TaskTracker恶魔的计算机上执行,或者在所有节点上执行,包括NameNode的恶魔,JobTracker和Secondary NameNode的启动?对我而言,了解对此问题的回答非常重要,因为/usr/countcomputers.txt
文件中设置的数字取决于它,在程序中读取。
答案 0 :(得分:0)
只允许tasktracker运行reducer(如果为属性mapreduce.tasktracker.reduce.tasks.maximum
配置了大于零的数字)。
因此,您可以放心地假设只在运行任务跟踪器的主机上执行reduce任务。