apache-spark - 如何将RDD复制到多个RDD中?

标签 apache-spark cassandra rdd

是否可以将一个 RDD 复制到两个或多个 RDD 中?

我想使用 cassandra-spark 驱动程序并将 RDD 保存到 Cassandra 表中,此外,继续进行更多计算(并最终将结果也保存到 Cassandra)。

最佳答案

RDD s 是不可变的,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")

关于apache-spark - 如何将RDD复制到多个RDD中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28024715/

相关文章:

java - 在 Spark 中读取两个不同的 ORC 架构文件

python - 从带有文本列的 Spark 数据帧创建 TF_IDF 向量

scala - datastax cassandra java 驱动程序与 scala 转换相关的问题(播放 2.3.x)

java - Cassandra - 用于选择和更新的分布式行锁定

apache-spark - Spark 作业完成后,OFF_HEAP rdd 被 Tachyon 自动删除

scala - Spark : How to split an RDD[T]` into Seq[RDD[T]] and preserve the ordering

pandas - pyspark中的 Pandas cumcount

scala - 使用 SparkSession 或 sqlcontext 时出错

Cassandra : Multiple tables vs materialized view

apache-spark - 如何在 PySpark 中检查空 RDD