SparkSQL自适应执行

  • 时间:
  • 浏览:1
  • 来源:大发5分快乐8APP下载_大发5分快乐8APP官方

目前SparkSQL中reduce阶段的task个数取决于固定参数spark.sql.shuffle.partition(默认值1000),一两个 作业一旦设置了该参数,它运行过程中的所有阶段的reduce个数都在同一两个 值。

阿里云EMR-3.13.0版本的SparkSQL支持自适应执行功能。

SparkSQL自适应执行解决以下问题报告 :

而对于不同的作业,以及同一两个 作业内的不同reduce阶段,实际的数据量大小可能相差很大,比如reduce阶段要解决的数据可能是10MB,都在可能是1000GB, 可能使用同一两个 值对实际运行数率会产生很大影响,比如10MB的数据一两个 task就还都可以解决,可能spark.sql.shuffle.partition使用默认值1000语句,没法 10MB的数据就要被分成1000个