gpt4 book ai didi

hadoop - Spark SQL:NoSuchMethodError:SQLContext.load

转载 作者:行者123 更新时间:2023-12-02 19:24:06 25 4
gpt4 key购买 nike

运行简单的Spark程序,尝试从HDFS读取CSV时出现NoSuchMethodError。

错误:

Exception in thread "main" java.lang.NoSuchMethodError: org.apache.spark.sql.SQLContext.load(Ljava/lang/String;Lscala/collection/immutable/Map;)Lorg/apache/spark/sql/DataFrame;

编码:
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf

import org.apache.spark.sql.SQLContext

object Averager{
def main (args: Array[String]) {
val conf = new SparkConf().setAppName("Averager")
val sc = new SparkContext(conf)

val sqlContext = new SQLContext(sc)

val df = sqlContext.load("com.databricks.spark-csv", Map("path" -> "hdfs://hadoop:9000/file.csv", "header" -> "true"))

df.printSchema()
}
}

和我的project.sbt文件:
name := "Averager"
version := "1.0"
scalaVersion := "2.10.5"
libraryDependencies += "org.apache.spark" %% "spark-core" % "1.6.0"
libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.6.0"
libraryDependencies += "com.databricks" % "spark-csv_2.10" % "1.5.0"

使用sbt软件包可以很好地进行编译,但是运行时会失败并打印出该错误。

提前致谢。

最佳答案

从Spark 2.x开始,spark-csv软件包已包含在Spark中。

您应该能够:

val df = spark.read.option(“header”,“true”)。csv(“file.csv”)

如果您使用的是Spark 1.6.x,则SQLContext上没有加载方法,您需要使用read():

val df = sqlContext.read.format(“com.databricks.spark.csv”)...

希望能有所帮助。

关于hadoop - Spark SQL:NoSuchMethodError:SQLContext.load,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42029232/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com