Spark&Drools - 如何用Kryo序列化KieBase

问题描述:

我在异常中运行,试图序列化Spark中的KieBase对象。Spark&Drools - 如何用Kryo序列化KieBase

当我执行以下代码:

val kieBase = kieContainer.getKieBase 
val broadcastKieBase = spark.sparkContext.broadcast(kieBase) 

ConcurrentModificationException升高在螺纹

异常 “主” com.esotericsoftware.kryo.KryoException: java.util.ConcurrentModificationException

环顾四周,我发现this is a known problem,但仍然没有解决方案。

任何人都知道如何使用Kryo序列化一个KieBase实例?

KieBase不能被序列化。相反,创建一个单例类并将KieBase嵌入执行器中。每个执行者都有自己的实例。

+0

KieBase可以使用'JavaSerializer'成功序列化。例如'kryo.register(KieBase.class,新的JavaSerializer());'问题是如何仅用Kryo来完成。 – freedev