1 task的内存缓冲调节参数2 reduce端聚合内存占比
怎么判断在什么时候对这两个参数进行调整呢? 通过监控平台查看每个executor的task的shuffle write和shuffle read的运行次数,如果发现这个指标的运行次数比较多,那么就应该考虑这两个参数的调整了;这个参数调整有一个前提,spark.shuffle.file.buffer参数每次扩大一倍的方式进行调整,spark.shuffle.memoryFraction参数每次增加0.1进行调整。 shuffle产生大量文件为了解决shuffle产生大量文件的问题,我们可以在map端输出的位置,将文件进行合并操作,即使用 spark.shuffle.consolidateFiles 参数来合并文件,具体的使用方式为
作者:z小赵 |
|