1 回答

TA贡献1842条经验 获得超21个赞
我的第一个建议是不要在 Java 中使用 RDD。Java 中的 RDD 比 Scala 中的要困难得多,它也是旧的 api。我建议改用 DataFrames。这些提供了不同数据源之间更清晰的接口以及自动优化和其他好处。
现在,如果您不能使用 DataFrames,您只需制作 CassandraJavaRDD,然后使用“withConnector”或“withReadConf”来更改读取配置。
https://github.com/datastax/spark-cassandra-connector/blob/master/spark-cassandra-connector/src/main/java/com/datastax/spark/connector/japi/rdd/CassandraJavaRDD.java#L123-L129
就像是
val cluster2 = CassandraConnector eventsConnector =
CassandraConnector.apply(
sc.getConf()
.set("spark.cassandra.connection.host", "192.168.36.234"));
javaFunctions(sc).cassandraTable(ks, "test_table").withConnector(cluster2).collect()
}
不需要构建器,因为 RDD 本身有一个流畅的 API。由于写入是在调用结束时立即发生的,因此它需要一个构建器。
添加回答
举报