将不同的对象类型保存为spark中cassandra中相同RDD的一部分

时间:2015-11-09 19:15:26

标签: scala apache-spark spark-cassandra-connector

我在spark中并行查询列表,并且我的RDD被映射到对象集合,其中对象类型将根据每个Query的数据源属性而不同。我有一张String的地图 - >函数,其中每个函数都为我提供了要保存到cassandra中的对象集合。例如:

val processingMethods: Map[String, (String) => Seq[Any]] = Map("trends" -> processTrendsResponse, "yahoo" -> processYahooResponse)

其中processTrendsResponse定义为返回Seq [Trends]的函数,processYahooResponse返回Seq [Yahoo],其中Trends和Yahoo定义的定义为案例类:

case class Trends(entity: String, time : Long, value: Long)
case class Yahoo(entity: String, time: Long, value: Long)

为了适应趋势和雅虎类型,processingMethods Map被定义为Map [String,(String)=> SEQ [任何]。但是当我在spark中执行saveToCassandra操作时,我会被一个例外门控 -

scala.ScalaReflectionException: <none> is not a term

提前致谢

0 个答案:

没有答案
相关问题