我尝试使用 CassandraConnector 在 scala bean 上映射 Row,如下所示:
object AttachBookingToEventSparkJob {
def main(args: Array[String]): Unit = {
val conf = new SparkConf(true).setAppName(appName)
val sc = new SparkContext(conf)
val jobParameterTable = sc.cassandraTable[SparkJobMapper](keyspace, JOB_TABLE_NAME)
}
case class SparkJobMapper(val col1: String, val col2:String)
}
它有效。
但是,如果我尝试外部化类SparkJobMapper(在同一包中),则会出现以下错误:
error: No RowReaderFactory can be found for this type
[INFO] val jobParameterTable = sc.cassandraTable[SparkJobMapper]
(keyspace, JOB_TABLE_NAME)
一些想法 ?
好吧,
这是一个愚蠢的错误。忘记在我的类声明中添加 case 关键字。