[英]Spark Cassandra Join ClassCastException
我正在尝试连接两个 Cassandra 表: t1.join(t2, Seq("some column"), "left")
我收到以下错误消息:
Exception in thread "main" java.lang.ClassCastException: scala.Tuple8 cannot be cast to scala.Tuple7 at org.apache.spark.sql.cassandra.execution.CassandraDirectJoinStrategy.apply(CassandraDirectJoinStrategy.scala:27)
我正在使用 cassandra v3.11.13 和 Spark 3.3.0。 代码依赖:
libraryDependencies ++= Seq(
"org.scalatest" %% "scalatest" % "3.2.11" % Test,
"com.github.mrpowers" %% "spark-fast-tests" % "1.0.0" % Test,
"graphframes" % "graphframes" % "0.8.1-spark3.0-s_2.12" % Provided,
"org.rogach" %% "scallop" % "4.1.0" % Provided,
"org.apache.spark" %% "spark-sql" % "3.1.2" % Provided,
"org.apache.spark" %% "spark-graphx" % "3.1.2" % Provided,
"com.datastax.spark" %% "spark-cassandra-connector" % "3.2.0" % Provided)
非常感谢您的帮助
Spark Cassandra 连接器尚不支持 Apache Spark 3.3.0,我怀疑这是它无法正常工作的原因,尽管我自己没有进行任何验证。
SPARKC-686中已请求支持 Spark 3.3.0,但所需的工作量很大,敬请期待。
最新支持的 Spark 版本是 3.2 ,使用 spark-cassandra-connector 3.2。 干杯!
此提交添加了对 Spark 3.3.x 的初始支持,尽管在此评论时它正在等待 RC/发布,因此您暂时需要自己构建和 package jars 才能开始使用它们来解决上述问题使用 spark 3.3 时出错。 作为活跃用户,这可能是提供任何后续 RC 反馈的好机会。
当 RC 的/稳定版本可用时,我将更新此评论,这应该可以解决其他遇到此问题的上述问题。 不幸的是,我没有足够的声誉将此评论添加到上面的线程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.