我正在使用亚马逊AWS,Dynamo数据库和EMR群集进行hadoop流式传输。我的reduce任务写入Dynamo表。我需要建立并遵守写入表格的上限,比如50%的写入吞吐量。
我可以查询表的写吞吐量设置,除以mapred.reduce.tasks,然后乘以50%,得到每个任务的表写入吞吐量的下限。更好的是,我想查询目前正在处理的reduce任务的数量以获得每个reduce任务的精确写入吞吐量上限,但我不知道如何获得该数字。我在jobtracker中看到它显示了任务总数,待处理任务和正在处理的任务。
一种替代方案,不是灵活的,是使用hadoop流参数“-numReduceTasks”设置任务数量。