Spark でクエリのリストを並列処理しています。私の RDD は、各クエリのデータ ソース属性に基づいてオブジェクト タイプが異なるオブジェクトのコレクションにマップされます。String -> function のマップを持っています。各関数は、cassandra に保存されるオブジェクトのコレクションを提供します。例えば:
val processingMethods: Map[String, (String) => Seq[Any]] = Map("trends" -> processTrendsResponse, "yahoo" -> processYahooResponse)
ここで、processTrendsResponse は Seq[Trends] を返す関数として定義され、processYahooResponse は Seq[Yahoo] を返す関数として定義されます。トレンドと Yahoo 定義はケース クラスとして定義されます。
case class Trends(entity: String, time : Long, value: Long)
case class Yahoo(entity: String, time: Long, value: Long)
Trends と Yahoo の両方のタイプに対応するために、processingMethods Map は Map[String, (String) => Seq[Any]] として定義されました。しかし、スパークで saveToCassandra アクションを実行すると、例外でゲートされます-
scala.ScalaReflectionException: <none> is not a term
前もって感謝します