Spark Streaming - 动态分配不删除 windows 间隔中间的执行程序

Spark Streaming - dynamic allocation do not remove executors in middle of windows interval

我有一个 Spark 流作业,批处理间隔为 10 分钟,slides/window 为 1 小时,我已使用 Spark 激活动态分配。

但是执行器在 1 小时后被删除,而不是在批处理间隔每 10 分钟后被删除,所以我必须等待 1 小时才能看到执行器被删除(如果没有数据要处理)。

有没有办法告诉 spark 在每个批次间隔而不是 Window 间隔后修改执行器删除?

谢谢。

请检查作业级别或默认配置 (spark-defaults.conf) 中的执行程序空闲超时 属性 设置

  • spark.dynamicAllocation.executorIdleTimeout
  • spark.dynamicAllocation.cachedExecutorIdleTimeout

参考this link了解更多详情。