【问题标题】:How to write csv file in apache spark using SparkR?如何使用 SparkR 在 apache spark 中编写 csv 文件?
【发布时间】:2016-06-10 12:59:22
【问题描述】:

我可以使用以下命令成功加载数据

sc = sparkR.init(master = 'local', sparkPackages = 'com.databricks:spark-csv_2.11:1.4.0')
sqlContext <- sparkRSQL.init(sc)
ss <- read.df(sqlContext, '/home/anmol/Downloads/Rgraphics/dataSets/states.csv', source = "com.databricks.spark.csv", inferSchema = "true")
head(ss)

我试过下面的命令

write.df(df, '/home/anmol/faithfull.csv', source = 'com.databricks.spark.csv', 'overwrite')

但它给出了以下错误

16/06/10 18:28:26 ERROR RBackendHandler: save on 261 failed 错误 invokeJava(isStatic = FALSE, objId$id, methodName, ...) : java.lang.NoClassDefFoundError:无法初始化类 com.databricks.spark.csv.util.CompressionCodecs$ 在 com.databricks.spark.csv.DefaultSource.createRelation(DefaultSource.scala:189) 在 org.apache.spark.sql.execution.datasources.ResolvedDataSource$.apply(ResolvedDataSource.scala:222) 在 org.apache.spark.sql.DataFrameWriter.save(DataFrameWriter.scala:148) 在 org.apache.spark.sql.DataFrame.save(DataFrame.scala:2027) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 在 java.lang.reflect.Method.invoke(Method.java:606) 在 org.apache.spark.api.r.RBackendHandler.handleMethodCall(RBackendHandler.scala:141) 在 org.apache.spark.api.r.RBackendHandler.channelRead0(RBackendHandler.scala:86) 在 org.apache.spark.api.r.RBackendHandler.channelRead0(RBackendHandler.scala:38) 在 io.netty.channel。

【问题讨论】:

  • 是什么让你觉得你在使用 Scala 2.11?
  • 绝对是一个版本错误,如 zero323 指出的。改用 spark-csv_2.10
  • 我没有使用 Scala 2.11 zero323
  • 但您使用的是为 scala 2.11 编译的 com.databricks:spark-csv_2.11:1.4.0
  • 我怎么能从 csv 读取数据

标签: csv apache-spark sparkr file-writing


【解决方案1】:

问题是用于编译我的 apache spark 的版本 那是 2.10 所以我用了

sc <- sparkR.init(master = 'local', sparkPackages = 'com.databricks:spark-csv_2.10:1.4.0')

你可以通过登录 spark-shell 来检查你的,它会在启动时给出 scala 的版本

【讨论】:

    猜你喜欢
    • 2017-09-06
    • 2015-10-18
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多