У меня есть следующий класс в Scala
case class A
(a:Int,b:Int) extends Serializable
, когда я пробую в Spark 2.4. (через Databricks)
val textFile = sc.textFile(...)
val df = textFile.map(_=>new A(2,3)).toDF()
(Изменить: ошибка возникает, когда я вызываю df.collect () или регистрирую как таблицу)
Я получаю org.apache.spark.SparkException: Task not serializable
что мне не хватает?
Я пробовал добавлять кодировщики:
implicit def AEncoder: org.apache.spark.sql.Encoder[A] =
org.apache.spark.sql.Encoders.kryo[A]
и
import spark.implicits._
import org.apache.spark.sql.Encoders
редактировать: Я также пробовал:
val df = textFile.map(_=>new A(2,3)).collect()
но пока не повезло.