Ignite 上的 Spark 是否使用 Ignite 的 Job Stealing(如果已设置)?

Does Spark on Ignite use Ignite's Job Stealing if its set?

我使用 spark 来执行 map-reduce 作业,但我遇到的一个问题是,当一个工作人员完成其任务份额并且其他工作人员的任务在他们的任务列表中排队时,空工作人员只是闲置。 Ignite 支持 Job Stealing,因此当一个 worker 空闲时,它可以从其他 worker 任务队列中获取。

https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/spi/collision/jobstealing/JobStealingCollisionSpi.html

IgniteRDD 是 运行 在 Ignite 集群上实现的 spark RDD。我想知道我是否保持我所有的 spark RDD map reduce 代码相同,但是 运行 它是一个设置了作业窃取算法的 ignite 集群,并将 spark JavaRDD 更改为 IgniteRDD 它会尊重作业窃取设置还是会是与旧的 spark static partition to workers 算法相同。

我尝试搜索但还没有确定的答案。另外,要测试点燃的东西需要做很多工作,所以我想 ide 先问问。

Apache Ignite 环境中的计算需要 Collision SPI(JobStealingCollisionSpi 作为可用实现之一)。没错,IgniteRDD 提供了与旧的 spark static partition to workers 算法相同的方法。如果您确实需要 "job stealing" 算法,您可以尝试将您的应用程序移动到计算 API。 Apache Ignite 提供友好的 API 并允许微调。您可以在此处找到更多详细信息 https://apacheignite.readme.io