我想使用spark scala来比较cassandra中的两个表。考虑像
这样的表格Id name. Phno. Id. Name. Phno
1. Aaa. 11. 1. Ccc. 11
2. Bbb. 22. 2. Bbb. 22
预期结果应如下所示
Id. OldValue. NewValue
1. Aaa. Ccc
提前致谢
答案 0 :(得分:0)
在下面尝试一些siliar。 Spark确实允许连接。根据需求更改连接到左/右(默认为内连接)。
val oldDF = sc.read.format("org.apache.spark.sql.cassandra")
.options(Map('keyspace'->"YOUR_KEYSPACE",'table'->"YOUR_TABLE1"))
.load()
.select(col("id"),col("name").as("oldValue"))
val newDF = sc.read.format("org.apache.spark.sql.cassandra")
.options(Map('keyspace'->"YOUR_KEYSPACE",'table'->"YOUR_TABLE2"))
.load()
.select(col("id"),col("name").as("newValue"))
val joined = oldDF.join(newDF,Seq("id"))