如何使用Spark将scala对象存储到cassandra表上

时间:2018-09-24 12:18:24

标签: scala apache-spark cassandra spark-cassandra-connector

我有一个Scala模型类,我想将其对象存储到Cassandra表上。按Cassandra和Scala类变量声明的列名顺序不匹配。

Cassandra表中还有一个附加列,像(tr_tag Text)这样的Scala类变量列表中没有该列 但是我做不到。

未插入数据。请帮助我解决这个问题。

scala模型类别:

class THData() extends Serializable{
     var s_id: java.lang.Long = null
     var a_id: String = null
     var s_typ: String= null
     var s_dt: java.util.Date= null
     var t_s_id: String= null
     var a_s_no: String= null
     var avg_sp: java.lang.Float = null
}

将对象插入cassandra的方法:

def insert(data: THData) {
     var em=sc.parallelize(Seq(data))
     em.saveToCassandra("ap", "t_s_data")
}

Cassndra表具有如下列名:

sid,aid,styp,sdt,tsid,asno,avgsp,tr_tag

1 个答案:

答案 0 :(得分:0)

我认为您应该按照documentation中的说明修改列名称:

enter image description here