当我的 spark 作业失败时,我收到以下错误**"org.apache.spark.shuffle.FetchFailedException: The relative remote executor(Id: 21), which maintains the block data to fetch is dead."**
我的 Spark 工作概览
输入大小约为 35 GB
我已经广播将所有较小的表与母表连接成 a dataframe1
,然后我将每个大表加盐,然后再dataframe1
加入dataframe1
(左表)。
使用的配置文件:
@configure(profile=[
'EXECUTOR_MEMORY_LARGE',
'NUM_EXECUTORS_32',
'DRIVER_MEMORY_LARGE',
'SHUFFLE_PARTITIONS_LARGE'
])
使用上述方法和配置文件,我能够将运行时间降低 50%,但由于 Executor Loss问题,我仍然遇到 Shuffle Stage Failing。
有什么办法可以解决这个问题吗?