重载方法值 json 与备选方案:(jsonRDD: org.apache.spark.rdd.RDD[String]) 在 IntelliJ 中使用 Spark
Overloaded method value json with alternatives: (jsonRDD: org.apache.spark.rdd.RDD[String]) using Spark in IntelliJ
我正在尝试将 JSON 字符串 jsonStr 转换为 Scala 中的 Spark Dataframe。为此目的使用 InteliJ。
val spark = SparkSession.builder().appName("SparkExample").master("local[*]").getOrCreate()
val sc = spark.sparkContext
import spark.implicits._
var df = spark.read.json(Seq(jsonStr).toDS)
df.show()
使用 Maven 编译/构建项目时出现以下错误。
Error:(243, 29) overloaded method value json with alternatives:
(jsonRDD:
org.apache.spark.rdd.RDD[String])org.apache.spark.sql.DataFrame
(jsonRDD:
org.apache.spark.api.java.JavaRDD[String])org.apache.spark.sql.DataFrame
(paths: String*)org.apache.spark.sql.DataFrame (path:
String)org.apache.spark.sql.DataFrame cannot be applied to
(org.apache.spark.sql.Dataset[String])
var df = spark.read.json(Seq(jsonStr).toDS)
注意:我在使用 SBT 构建时没有遇到错误。
将您的代码更改为
val rdd = sc.parallelize(Seq(jsonStr))
var json_df = spark.read.json(rdd)
var df = json_df.toDS
(或组合成一个变量,由你决定)
.
您试图将 Dataset
传递给 spark.read.json
函数,因此出现错误。
Spark 2.2.0 中引入了以下方法
def json(jsonDataset: Dataset[String]): DataFrame =
请更正您在 Maven 的 pom.xml 文件中的 Spark 版本
我正在尝试将 JSON 字符串 jsonStr 转换为 Scala 中的 Spark Dataframe。为此目的使用 InteliJ。
val spark = SparkSession.builder().appName("SparkExample").master("local[*]").getOrCreate()
val sc = spark.sparkContext
import spark.implicits._
var df = spark.read.json(Seq(jsonStr).toDS)
df.show()
使用 Maven 编译/构建项目时出现以下错误。
Error:(243, 29) overloaded method value json with alternatives: (jsonRDD: org.apache.spark.rdd.RDD[String])org.apache.spark.sql.DataFrame (jsonRDD: org.apache.spark.api.java.JavaRDD[String])org.apache.spark.sql.DataFrame (paths: String*)org.apache.spark.sql.DataFrame (path: String)org.apache.spark.sql.DataFrame cannot be applied to (org.apache.spark.sql.Dataset[String]) var df = spark.read.json(Seq(jsonStr).toDS)
注意:我在使用 SBT 构建时没有遇到错误。
将您的代码更改为
val rdd = sc.parallelize(Seq(jsonStr))
var json_df = spark.read.json(rdd)
var df = json_df.toDS
(或组合成一个变量,由你决定) .
您试图将 Dataset
传递给 spark.read.json
函数,因此出现错误。
Spark 2.2.0 中引入了以下方法
def json(jsonDataset: Dataset[String]): DataFrame =
请更正您在 Maven 的 pom.xml 文件中的 Spark 版本