使用Amazon Elastic MapReduce完成任务后,通常会将所有关键结果写入不同的文件吗?假设我有20k行数据记录,但只有3个键。我最终得到6个文件,3个空,3个包含密钥及其相应的数据。如果有所作为,我正在运行1个Master和2个Core。
我还有第二个问题,我还没有考虑过,但也许可以快速回答。什么是最好的方法或在哪些方面可以保持所有键之间的总计数变量?我想使用总共#个MR作业对数据执行操作。现在我的代码会跟踪每个键的计数
添加:当我只使用1个主人时,我会得到一个_SUCCESS文件和3个部分r文件。 1包含2个键,1个空白,1个包含1个键。我对此有什么控制权吗?
答案 0 :(得分:1)
作为程序参数的一部分,您可以传递-Dmapreduce.job.reduces来控制文件数。默认情况下,EMR使用的减速器等于集群中的节点数。
关于第二个问题,您想获得每个密钥的总记录数吗?你能举出一个例子吗?