Apache spark IgniteQueue获取-SparkException:任务不可序列化

Apache spark IgniteQueue获取-SparkException:任务不可序列化,apache-spark,ignite,Apache Spark,Ignite,当我们在火花贴图中使用IgniteQueue时,如下所示 sparkDataFrame.map(row => { igniteQueue.put(row) }) 我们得到SparkException:TaskNotSerializable异常。这是因为IgniteQueue不可序列化 有没有办法使IgniteQueue可序列化 提前感谢 您的类实现是可序列化的吗?如果没有,则使该类可序列化并检查。您对ignite spark使用了哪些依赖项以及哪个版本?您不需要序列化ignite队列

当我们在火花贴图中使用IgniteQueue时,如下所示

sparkDataFrame.map(row => {
  igniteQueue.put(row)
})
我们得到SparkException:TaskNotSerializable异常。这是因为IgniteQueue不可序列化

有没有办法使IgniteQueue可序列化


提前感谢

您的类实现是可序列化的吗?如果没有,则使该类可序列化并检查。您对ignite spark使用了哪些依赖项以及哪个版本?

您不需要序列化ignite队列,您需要在spark任务中使用它,从ignite实例开始,例如:

JavaIgniteContext<Integer, Integer> igniteContext = new JavaIgniteContext<Integer, Integer>(
                sparkContext,"examples/config/spark/example-shared-rdd.xml", false);
Ignite ignite = igniteContext.ignite();
IgniteQueue queue = ignite.queue(name, cap, null);
JavaIgniteContext igniteContext=新的JavaIgniteContext(
sparkContext,“examples/config/spark/example shared rdd.xml”,false);
Ignite=igniteContext.Ignite();
IgniteQueue=ignite.queue(名称、上限、null);
此外,您还可以获得有关集成Ignite与spark的信息