Spark に次のコードがあります。
rdd
.map(processFunction(_))
.saveToCassandra("keyspace", "tableName")
どこ
def processFunction(src: String): Seq[Any] =
src match {
case "a" => List(A("a", 123112, "b"), A("b", 142342, "c"))
case "b" => List(B("d", 12312, "e", "f"), B("g", 12312, "h", "i"))
}
どこ:
case class A(entity: String, time: Long, value: String)
case class B(entity: String, time: Long, value1: String, value2: String)
saveToCassandra
はオブジェクトのコレクションを期待しSeq[Any]
、戻り値の型として両方を含むように使用し、例外Seq[A]
でSeq[B]
中断saveToCassandra
します -scala.ScalaReflectionException: <none>
は用語ではありません。この動作の理由は何でしょうか?