在我的Spark程序中,我可以通过调整--num-executors
参数来限制程序运行的节点数。现在我想将我的程序的可伸缩性与类似的MapReduce程序进行比较。但为此,我还需要限制它的节点数量。
我在群集中运行这两个程序,但我没有任何管理员权限。那么,有可能这样做吗?
答案 0 :(得分:2)
在MapReduce中,您可以限制减速器的数量 (在你的情况下make reducers =所需的节点数),
产生的映射器数量将基于InputFormat 你可以做的是根据InputFormat仔细计算InputSize,它应该是=预期的节点数。
举个例子。
InputFormat = TextInputFormat.
Input Text File size = 2 GB
TextInputFormat split size( defaults to hdfs block size) = 128 MB
在这种情况下,您将看到16个Mappers正在运行。如果您有16个节点,则所有节点将并行运行。
(理解这是最好的情况,你可能仍然会看到mappers在同一个节点上运行)
请按照http://bytepadding.com/big-data/map-reduce/understanding-map-reduce-the-missing-guide/进行详细了解