繁体   English   中英

Cassandra Scala Spark-将RDD保存到Cassandra

[英]Cassandra Scala Spark - saving RDD to Cassandra

我有以下RDD

RDD[(String, Seq[((String, Double), Int)])]

一个例子是:

RDD["a", Seq[(("b", 2.0), 1), (("c", 3.0), 2)]]

我想使用以下架构插入我的Cassandra表中

String (PK), String, Double, Int

最后,对于给定的示例,我将在数据库中包含以下内容

"a", "b", 2.0, 1
"a", "c", 3.0, 2

这是什么Scala代码? 我尝试使用saveToCassandra ,但是输入的形式不是RDD[(String, String, Double, Int)] 我应该先弄平吗?

您需要的只是一个flatMap

import org.apache.spark.rdd.RDD

val rdd: RDD[(String, Seq[((String, Double), Int)])] = ???
val flattened: RDD[(String, String, Double, Int)] = rdd.flatMap{
  case (k, vs) => vs.map{case ((v1, v2), v3) => (k, v1, v2, v3)}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM