繁体   English   中英

如何使用Java中的spark仅将几列保存到cassandra

[英]How to save only few columns to cassandra using spark In Java

我正在尝试使用以下方法将 RDD 保存到 Cassandra

JavaRDD<UserSetGet> rddFromGz = sc.parallelize(ListFromS3);

CassandraJavaUtil.javaFunctions(rddFromGz)
        .writerBuilder("dmp", "table", mapToRow(UserSetGet.class)).saveToCassandra();

这里 UserSetGet 对象的所有字段都已初始化。

但我只想保存一些列,怎么做?

在文档中,它说我们可以做到

.saveToCassandra("test", "words", SomeColumns("word", "1"));

但它无法识别 SomeColumns 方法。

SomeColumns 方法用于Scala api,您使用的是 Java API ...

或许是转用Scala的好机会

希望以下几行对您有所帮助

val w1 = CassandraJavaUtil.javaFunctions(rdd23).writerBuilder("smart","emp", CassandraJavaUtil.mapToRow(classOf[emp]))
w1.withColumnSelector(CassandraJavaUtil.someColumns("pid","page")).saveToCassandra()

暂无
暂无

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

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