sparkr 2.0 read.df 抛出路径不存在错误
Posted
技术标签:
【中文标题】sparkr 2.0 read.df 抛出路径不存在错误【英文标题】:sparkr 2.0 read.df throws path does not exist error 【发布时间】:2016-09-25 19:47:53 【问题描述】:我的 spark r 1.6 代码在 spark2.0 中不起作用,我进行了必要的更改,例如创建 sparkr.session()
而不是 sparkr.init()
并且不传递 sqlcontext 参数等...
在下面的代码中,我将几个文件夹中的数据加载到数据框中
spark1.6 中的 read.df 有效
sales <- read.df(sqlContext, path= "gs://dev.appspot.com/myData/2014/20*,gs://dev.appspot.com/myData/2015/20*", source = "com.databricks.spark.csv", delimiter
="\t")
spark2.0 中的 read.df 不起作用
sales <- read.df("gs://dev.appspot.com/myData/2014/20*,gs://dev.appspot.c
om/myData/2015/20*", source = "com.databricks.spark.csv", delimiter="\t")
以上行抛出以下错误:
6/09/25 19:28:52 ERROR org.apache.spark.api.r.RBackendHandler: loadDF on org.apache.spark.sql.api.r.SQLUtils faile d Error in invokeJava(isStatic = TRUE, className, methodName, ...) : org.apache.spark.sql.AnalysisException: **Path does not exist: gs://dev.appspot.com/myData/2014/ 20*,gs://dev.appspot.com/myData/2015/20***;
at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$12.apply(DataSource.scala:357)
at org.apache.spark.sql.execution.datasources.DataSource$$anonfun$12.apply(DataSource.scala:350)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
at scala.collection.TraversableLike$$anonfun$flatMap$1.apply(TraversableLike.scala:241)
at scala.collection.immutable.List.foreach(List.scala:381)
at scala.collection.TraversableLike$class.flatMap(TraversableLike.scala:241)
at scala.collection.immutable.List.flatMap(List.scala:344)
at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:350)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:149)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:122 Calls: read.df -> dispatchFunc -> f -> callJStatic -> invokeJava Execution halted 16/09/25 19:28:53 INFO org.spark_project.jetty.server.ServerConnector: Stopped ServerConnector@148bd6fdHTTP/1.10 .0.0.0:4040
【问题讨论】:
【参考方案1】:spark2.0 read.df 无法读取文件名中包含“,”(逗号)的文件。
我生成的数据文件有一个逗号 文件名,类似于 201448-0,004 201448-0,005 201448-0,006
在调试问题的痛苦时间后,当我从文件名中删除“,”时,它终于开始读取数据。
【讨论】:
以上是关于sparkr 2.0 read.df 抛出路径不存在错误的主要内容,如果未能解决你的问题,请参考以下文章