SaveMode 在 Spark SQL 中不起作用

Sha*_*shi 2 scala apache-spark apache-spark-sql

我正在使用 SaveMode 选项运行 Spark SQL 示例,但出现以下错误。

val df = sqlContext.read.format("json").load("/user/root/spark/data/people.json")
df.select("name","age").write.format("json").save("Output",SaveMode.ErrorIfExist)


<console>:35: error: overloaded method value save with alternatives:
  ()Unit <and>
  (path: String)Unit
 cannot be applied to (String, org.apache.spark.sql.SaveMode)
              df.select("name", "age").write.format("json").save("Output",SaveMode.ErrorIfExists
Run Code Online (Sandbox Code Playgroud)

我检查了文档,它说 SaveMode 已被弃用。我该如何解决?

任何建议。

zer*_*323 6

您可以使用DataFrameWriter.mode方法:

df.write.mode("error").save(...)
Run Code Online (Sandbox Code Playgroud)

或者

df.write.mode(SaveMode.ErrorIfExists).save(...)
Run Code Online (Sandbox Code Playgroud)

  • @Shashi 使用 import org.apache.spark.sql.SaveMode 。然后尝试 df.write.mode(SaveMode.ErrorIfExists).save(...) (3认同)