hive作业在reduce阶段永远运行

ubby3x7f  于 2021-05-29  发布在  Hadoop
关注(0)|答案(1)|浏览(392)

我正在查询 60 GB dataset in Hive . 当我发出询问时 270 mappers 会在15分钟内完成 reducer state to complete 0.01% ,至少需要45分钟到1小时。所以这项工作一直在进行。有什么办法解决吗

j0pj023g

j0pj023g1#

你为什么不用组合器和分割器呢?
案例
您可以使用组合器,这是一个小减少阶段。
例如:如果您的Map器产生100行数据,并且如果您使用组合器对其执行聚合,那么它将被减少到一行和1行*270(Map器)=270行,并作为输入输入。
案例:
您可以使用partitioner根据键(如果是唯一的)或值(在范围内)对数据进行分区,如if value>20返回0;否则返回1。这样我们就有了更多的简化程序来处理数据。

相关问题