用于分析不适合存储的数据集的编程技术
Outds = mapreduce(ds,mapfun,reducefun)
Outds = mapreduce(ds,mapfun,reducefun,mr)
Outds = mapreduce(___、名称、值)
调试mapreduce
检查键值对如何通过不同阶段移动的算法总是有用的。要检查数据的移动,请在map和reduce函数中设置断点。的执行将停止mapreduce
,允许您检查相关变量的当前状态,例如KeyValueStore
或ValueIterator
.有关更多信息,请参见调试MapReduce算法.
优化的一些建议mapreduce
在任何平台上的性能是:
尽量减少对map函数的调用次数。最简单的方法是增加的值ReadSize
属性的输入数据存储。结果是mapreduce
将更大的数据块传递给map函数,数据存储将在更少的读取时耗尽。
减少map和reduce函数之间发送的中间数据量。一种方法是使用独特的
在映射函数内组合相似的键。看到使用MapReduce计算组均值下面是该技术的一个示例。