Я применяю следующее через Spark Cassandra Connector:
val links = sc.textFile("linksIDs.txt")
links.map( link_id =>
{
val link_speed_records = sc.cassandraTable[Double]("freeway","records").select("speed").where("link_id=?",link_id)
average = link_speed_records.mean().toDouble
})
Я хотел бы спросить, есть ли способ более эффективно применить указанную выше последовательность запросов, учитывая, что единственный параметр, который я всегда меняю, - это 'link_id'.
Значение 'link_id' - это единственный ключ раздела в моей таблице «записи» Cassandra. Я использую Cassandra v.2.0.13, Spark v.1.2.1 и Spark-Cassandra Connector v.1.2.1
Я подумал, можно ли открыть сеанс Cassandra, чтобы применить эти запросы и при этом получить «link_speed_records» как SparkRDD.