Как дублировать RDD на несколько RDD?

Можно ли дублировать RDD на два или несколько RDD?

Я хочу использовать драйвер cassandra-spark и сохранить RDD в таблицу Cassandra и, кроме того, продолжить вычисления (и в конечном итоге также сохранить результат в Cassandra).


person AlonL    schedule 19.01.2015    source источник


Ответы (1)


RDD являются неизменяемыми, а преобразования в RDD создают новые RDD. Поэтому нет необходимости создавать копии RDD для выполнения различных операций.

Вы можете сохранить базовый RDD во вторичном хранилище и в дальнейшем применять к нему операции.

Это совершенно нормально:

val rdd = ???
val base = rdd.byKey(...)
base.saveToCassandra(ks,table)
val processed = byKey.map(...).reduceByKey(...)
processed.saveToCassandra(ks,processedTable)
val analyzed = base.map(...).join(suspectsRDD).reduceByKey(...)
analyzed.saveAsTextFile("./path/to/save")
person maasg    schedule 19.01.2015