映射器和缩减器的数量。这是什么意思?

问题描述:

我是MapReduce - hadoop世界的新手。在配置和文档中,他们指定映射器和缩减器的数量。这实际上是什么意思?我的doulbts是:映射器和缩减器的数量。这是什么意思?

  1. 它是指定层次映射/减少将完成。即如果reducer的数量= 2,那么reduce方法将被调用2次。是吗?
  2. 是否指定了并行工作的mapper/reducer线程的数量,但每个线程只映射/减少一次。

哪一个是正确的?或者它意味着别的。我在困惑..请回答我

不,你是完全错误的。

  1. 指定maptasks的数目只给出一个提示的框架内,输入格式决定输入分割的数量,一个划分=一个映射任务
  2. 减少任务的数量表示地图输出密钥分为多少个任务,假设您有1000个不同的地图输出密钥和5个减少任务,那么每个减少任务将获得大约200个密钥。对于每个键,调用reduce函数,所以约。在我的例子中,每减少200次任务。
  3. 少量任务,简化任务并没有提到任何有关并行化的内容。每个节点的并行线程数由tasktracker决定。因此,您应该指定地图的数量,并减少可供任务跟踪器并行运行的插槽。这是用mapred.tasktracker.map|reduce.tasks.maximum配置的。请注意,减速器(在插槽中)将执行任务。因此,配置减少插槽的数量和相应减少任务的数量非常重要。如果总共有10个减少插槽,则至少需要10个减少任务,否则某些插槽会闲置。
+0

哦。那么你可以给我它的配置 –

+0

你可以看看这里:http://hadoop.apache.org/docs/r0.18.3/mapred_tutorial.html#Job+Configuration 请注意,您必须注意您的hadoop版本,并非所有参数都在每个版本中! – DDW

如你是新来的map-reduce,我坚信,你需要去通过本文:http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en//archive/mapreduce-osdi04.pdf

你们中的大多数,一旦范式清楚地理解疑虑将被清除。它是完美的起点。