我尝试使用saveToCassandra
将数据从Spark保存到Scala中的Cassandra用于RDD或使用数据帧保存(两者都会导致相同的错误)。完整的信息是:
java.lang.ClassCastException: com.datastax.driver.core.DefaultResultSetFuture无法强制转换为 com.google.common.util.concurrent.ListenableFuture
我已经跟着代码here,但似乎仍然出错。
我使用的是Cassandra 3.6,Spark 1.6.1和spark-cassandra-connector 1.6。如果我能提供其他任何帮助调试的信息,请告诉我。
答案 0 :(得分:1)
我有类似的异常并在更改build.sbt scala版本后修复了它:
scalaVersion := "2.10.6"
和库依赖项:
libraryDependencies ++= Seq(
"com.datastax.spark" %% "spark-cassandra-connector" % "1.6.0",
"com.datastax.cassandra" % "cassandra-driver-core" % "3.0.2",
"org.apache.spark" %% "spark-core" % "1.6.1" % "provided",
"org.apache.spark" %% "spark-sql" % "1.6.1" % "provided"
)
使用5-minute quick start guide中的此配置示例可以正常工作。