44: error: value read is not a member of object org.apache.spark.sql.SQLContext
44: error: value read is not a member of object org.apache.spark.sql.SQLContext
我正在使用 Spark 1.6.1 和 Scala 2.10.5。我正在尝试通过 com.databricks 读取 csv 文件。
在启动 spark-shell 时,我也使用下面的行
spark-shell --packages com.databricks:spark-csv_2.10:1.5.0 --driver-class-path 路径to/sqljdbc4。 jar,下面是全部代码
import java.util.Properties
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
import org.apache.spark.sql.SQLContext
val conf = new SparkConf().setAppName("test").setMaster("local").set("spark.driver.allowMultipleContexts", "true");
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)
import sqlContext.implicits._
val df = SQLContext.read().format("com.databricks.spark.csv").option("inferScheme","true").option("header","true").load("path_to/data.csv");
我遇到以下错误:-
错误:读取的值不是对象 org.apache.spark.sql.SQLContext 的成员,
并且“^”指向错误消息中的 "SQLContext.read().format"。
我确实尝试了 Whosebug 以及其他网站中可用的建议。但似乎没有任何效果。
SQLContext
表示对象访问-class.
中的静态方法
您应该使用 sqlContext
变量,因为方法不是静态的,而是在 class
中
所以代码应该是:
val df = sqlContext.read.format("com.databricks.spark.csv").option("inferScheme","true").option("header","true").load("path_to/data.csv");
我正在使用 Spark 1.6.1 和 Scala 2.10.5。我正在尝试通过 com.databricks 读取 csv 文件。 在启动 spark-shell 时,我也使用下面的行
spark-shell --packages com.databricks:spark-csv_2.10:1.5.0 --driver-class-path 路径to/sqljdbc4。 jar,下面是全部代码
import java.util.Properties
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
import org.apache.spark.sql.SQLContext
val conf = new SparkConf().setAppName("test").setMaster("local").set("spark.driver.allowMultipleContexts", "true");
val sc = new SparkContext(conf)
val sqlContext = new SQLContext(sc)
import sqlContext.implicits._
val df = SQLContext.read().format("com.databricks.spark.csv").option("inferScheme","true").option("header","true").load("path_to/data.csv");
我遇到以下错误:-
错误:读取的值不是对象 org.apache.spark.sql.SQLContext 的成员, 并且“^”指向错误消息中的 "SQLContext.read().format"。
我确实尝试了 Whosebug 以及其他网站中可用的建议。但似乎没有任何效果。
SQLContext
表示对象访问-class.
您应该使用 sqlContext
变量,因为方法不是静态的,而是在 class
所以代码应该是:
val df = sqlContext.read.format("com.databricks.spark.csv").option("inferScheme","true").option("header","true").load("path_to/data.csv");