Cassandra连接器-joinWithCassandraTable和leftJoinWithCassandraTable之间的区别-无法解析符号

问题描述 投票:0回答:1

我正在尝试通过使用datastax cassandra连接器加入来从Cassandra访问数据。下面的代码为我工作。加入后,我试图总结RDD和Cassandra中的值列]

tm(a.joinWithCassandraTable("ks","tbl").on(SomeColumns("key","key2","key3","key4","key5","key6","key7","key8","key9","key10","key11","key12","key13","key14","key15","column1","column2","column3","column4","column5")).select("value1").map { case (ip, row) => IP(ip.key, ip.key2, ip.key3,ip.key4,ip.key5,ip.key6,ip.key7,ip.key8,ip.key9,ip.key10,ip.key11,ip.key12,ip.key13,ip.key14,ip.key15,ip.column1,ip.column2,ip.column3,ip.column4,ip.column5,ip.value1 + row.getLong("value1")) }.saveToCassandra("ks", "tbl"))

但是,当我尝试进行左联接时,它给出了“无法解析符号getLong

”我相信这是由于事实,即左联接不能保证值,因为它可能为null,但是我无法在scala中对此进行编码。
tm(a.leftJoinWithCassandraTable("ks","tbl").on(SomeColumns("key","key2","key3","key4","key5","key6","key7","key8","key9","key10","key11","key12","key13","key14","key15","column1","column2","column3","column4","column5")).select("value1").map { case (ip, row) => IP(ip.key, ip.key2, ip.key3,ip.key4,ip.key5,ip.key6,ip.key7,ip.key8,ip.key9,ip.key10,ip.key11,ip.key12,ip.key13,ip.key14,ip.key15,ip.column1,ip.column2,ip.column3,ip.column4,ip.column5,ip.value1 + row.getLong("value1")) }.saveToCassandra("ks", "tbl"))

感谢您的帮助。如果需要任何信息,请告诉我,我将尝试添加

我正在尝试通过使用datastax cassandra连接器加入来从Cassandra访问数据。下面的代码为我工作。我试图在加入tm(...

apache-spark cassandra datastax spark-cassandra-connector
1个回答
1
投票
© www.soinside.com 2019 - 2024. All rights reserved.