我正在寻找类似DISTRIBUTE BY
但映射器而不是减速器的东西。
我有一个我正在运行并使用的仅限地图的转换作业
SET mapred.min.split.size=2100000;
SET mapred.max.split.size=2100000;
控制分配的映射器数量。总分区大小约为 800MB,作业确实分配了大约 400 个映射器,这似乎与拆分大小一致。我遇到的问题是约 390 个映射器在 < 1m 内完成并显示处理了 0 条记录。剩下的 10 个映射器负责整个工作,需要几天时间才能完成。
有没有一种方法可以强制映射器获取(大约)相等数量的记录,这样就不会发生这种情况?