我在我们的集群上运行了Spark Streaming作业和其他作业(Spark核心作业)。我想对这些作业使用动态资源分配,包括Spark Streaming。根据以下JIRA问题,动态分配不支持Spark Streaming(1.6.1版本)。但是在2.0.0中修复了
根据本期的PDF,它说应该有一个名为的配置字段
spark.streaming.dynamicAllocation.enabled=true
但是我没有在文档中看到这种配置。
任何人都可以确认,
spark.streaming.dynamicAllocation.enabled=true
或spark.dynamicAllocation.enabled=true
)答案 0 :(得分:5)
我可以为Spark Streaming启用动态资源分配吗? 1.6.1版本?
是的,您可以通过spark.dynamicAllocation.enabled=true
为任何火花应用设置动态分配来启用
但我在流媒体应用程序方面遇到的问题很少(在JIRA中提到)
因此,他们在Spark 2.0中添加了新属性(spark.streaming.dynamicAllocation.enabled
),仅用于流媒体应用程序。
它是否在Spark 2.0.0中可用。如果是,应该是什么配置 设置spark.streaming.dynamicAllocation.enabled或 spark.dynamicAllocation.enabled?
如果应用程序是流式传输,则必须为spark.streaming.dynamicAllocation.enabled
,否则请使用spark.dynamicAllocation.enabled
修改(根据2017年1月5日的评论)
今天没有记录,但我在Spark源代码中获得了这个属性和实现。 ExecutorAllocationManager.scala
(单元测试ExecutorAllocationManagerSuite.scala
)类已包含在Spark 2.0中,并且此实现在Spark 1.6及更低版本中不存在。