ScalaSpark:无法创建数据框

问题描述 投票:-3回答:1

我需要使用spark 2.3或2.4支持沙发床版本6,scala版本为2.11.12。创建数据框时遇到问题。

SBT代码段

scalaVersion := "2.11.12"

resolvers += "Couchbase Snapshots" at "http://files.couchbase.com/maven2"

val sparkVersion = "2.3.2"


libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % sparkVersion,
  "org.apache.spark" %% "spark-streaming" % sparkVersion,
  "org.apache.spark" %% "spark-sql" % sparkVersion,
  "com.couchbase.client" %% "spark-connector" % "2.3.0",
  "com.couchbase.client" %% "scala-client" % "1.0.0-alpha.3")

代码

val spark = SparkSession
      .builder()
      .appName("Example")
      .master("local[*]") 
      .config("spark.couchbase.nodes", "10.12.12.88") // connect to Couchbase Server on localhost
      .config("spark.couchbase.username", "abcd") // with given credentials
      .config("spark.couchbase.password", "abcd")
      .config("spark.couchbase.bucket.beer-sample", "") // open the travel-sample bucket
      .getOrCreate()

val sc = spark.sparkContext
import com.couchbase.spark.sql._
val sql = spark.sqlContext
val dataframe = sql.read.couchbase()   
val result = dataframe.collect()

Exception

Caused by: java.lang.ClassNotFoundException: com.couchbase.client.core.message.CouchbaseRequest
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351)

已尝试:按照建议添加一个依赖项>

"com.couchbase.client" % "core-io" % "1.7.6",

但无法修复。请为这个问题提出解决方案

我需要使用spark 2.3或2.4支持沙发床版本6,scala版本为2.11.12。创建数据框时遇到问题。 SBT代码段scalaVersion:=“ 2.11.12”解析器+ =“ ...

scala apache-spark apache-spark-sql couchbase
1个回答
0
投票

我已经对您的build.sbt文件进行了更改,并为sbt-assembly插件添加了设置。

© www.soinside.com 2019 - 2024. All rights reserved.