这是一个奇怪的问题,最近我们开始从运行 MRv1 的旧 CDH 4.2.1 集群迁移到运行 Mrv2(YARN) 的 CM5 托管 CDH 5.2.0 集群,并且遇到了一些相当不寻常的问题。该工作流处理大约 1.2TB 的数据,在 CDH 4.2.1 集群上,所触发的处理查询不使用减速器,每个单独的地图输出都存储为单个文件(大约需要 35 分钟)
在 CDH 5.2.0 集群上,工作流大部分时间都失败了(在正常花费时间的 3 倍以上之后),并且总是尝试将所有映射器的输出合并到一个文件中,我们认为这就是它所在的位置翻倒。
所有错误日志都指向 Shuffle 和 sort 阶段因堆空间不足错误而失败。
我们已经尝试使用这两个参数来指定没有减速器(mapred.reduce.tasks = 0 和 mapreduce.jobs.reduces = 0),但这没有任何效果。
这是一个 HiveQL 查询,使用 python 转换来处理数据字段,并且已经迁移了确切的代码、查询、表和工作流。
有没有其他人遇到过这个问题,或者有人可以解释一下吗?
谢谢,
安东尼