使用 SQlcontext 在 spark 中加载我的 csv 时出现错误

新手上路,请多包涵

在此处输入图像描述

sparkDF = sqlContext.read.format('com.databricks.spark.csv').options(header='true').load('PR_DATA_35.csv')

错误_———————————————— ---------------------------------------------- ---------------------------------------------- Py4JJavaError在 () —-> 1 sparkDF = sqlContext.read.format(‘com.databricks.spark.csv’) .options(header=‘true’).load(‘PR_DATA_35.csv ‘)

/home/ec2-user/spark/python/pyspark/sql/readwriter.pyc in load(self, path, format, schema, **options) 157 self.options(**options) 158 if isinstance(path, basestring) : –> 159 return self._df(self._jreader.load(path)) 160 elif path is not None: 161 if type(path) != list:

/home/ec2-user/spark/python/lib/py4j-0.10.4-src.zip/py4j/java_gateway.py in call (self, *args) 1131 answer = self.gateway_client.send_command(command) 1132 return_value = get_return_value( -> 1133 answer, self.gateway_client, self.target_id, self.name) 1134 1135 for temp_args in temp_args:

/home/ec2-user/spark/python/pyspark/sql/utils.pyc in deco(*a, **kw) 61 def deco(*a, **kw): 62 try: —> 63 return f (*a, **kw) 64 除了 py4j.protocol.Py4JJavaError 作为 e: 65 s = e.java_exception.toString()

/home/ec2-user/spark/python/lib/py4j-0.10.4-src.zip/py4j/protocol.py in get_return_value(answer, gateway_client, target_id, name) 317 raise Py4JJavaError( 318 “调用时出错{0}{1}{2}.\n”. –> 319 format(target_id, “., name), value) 320 else: 321 raise Py4JError(

Py4JJavaError:调用 o312.load 时出错。 :org.apache.spark.SparkException:作业因阶段失败而中止:阶段 5.0 中的任务 0 失败 4 次,最近的失败:阶段 5.0 中丢失任务 0.3(TID 23、172.31.17.233,执行程序 0):java.io .FileNotFoundException: File file:/home/ec2-user/PR_DATA_35.csv does not exist 底层文件可能已更新。您可以通过在 SQL 中运行“REFRESH TABLE tableName”命令或通过重新创建所涉及的数据集/数据帧来显式使 Spark 中的缓存无效。在 org.apache.spark.sql.execution.datasources.FileScanRDD$\(anon\)1.org\(apache\)spark\(sql\)execution\(datasources\)FileScanRDD$\(anon\)\(readCurrentFile(FileScanRDD.scala:127) 在 org.apache。 spark.sql.execution.datasources.FileScanRDD\)\(anon\)1.nextIterator(FileScanRDD.scala:174) 在 org.apache.spark.sql.execution.datasources.FileScanRDD$\(anon\)1.hasNext(FileScanRDD.scala:105) 在org.apache.spark.sql.catalyst.expressions.GeneratedClass\(GeneratedIterator.processNext(未知来源)在 org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43)在 org.apache.spark.sql .execution.WholeStageCodegenExec\)\(anonfun\)8$\(anon\)1.hasNext(WholeStageCodegenExec.scala:395) 在 org.apache.spark.sql.execution.SparkPlan$\(anonfun\)2.apply(SparkPlan.scala:234) 在 org.apache .spark.sql.execution.SparkPlan$\(anonfun\)2.apply(SparkPlan.scala:228) 在 org.apache.spark.rdd.RDD$\(anonfun\)mapPartitionsInternal\(1\)\(anonfun\)apply\(25.apply(RDD.scala: 827) 在 org.apache.spark.rdd.RDD\)\(anonfun\)mapPartitionsInterna l\(1\)\(anonfun\)apply\(25.apply(RDD.scala:827) 在 org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38) 在 org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD) .scala:323) 在 org.apache.spark.rdd.RDD.iterator(RDD.scala:287) 在 org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87) 在 org.apache.spark。 scheduler.Task.run(Task.scala:108) 在 org.apache.spark.executor.Executor\)TaskRunner.run(Executor.scala:335) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) 在 java.lang.Thread.run(Thread.java:748)

驱动程序堆栈跟踪:在 org.apache.spark.scheduler.DAGScheduler.org\(apache\)spark\(scheduler\)DAGScheduler$\(failJobAndIndependentStages(DAGScheduler.scala:1499) 在 org.apache.spark.scheduler.DAGScheduler\)\(anonfun\)abortStage\(1。在 org.apache.spark.scheduler.DAGScheduler\)\(anonfun\)abortStage\(1.apply(DAGScheduler.scala:1487) 在 scala.collection.mutable.ResizableArray\)class.foreach(ResizableArray.scala: 59) 在 scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48) 在 org.apache.spark.scheduler.DAGScheduler.abortStage(DAGScheduler.scala:1486) 在 org.apache.spark.scheduler.DAGScheduler$\( anonfun\)handleTaskSetFailed\(1.apply(DAGScheduler.scala:814) 在 org.apache.spark.scheduler.DAGScheduler\)\(anonfun\)handleTaskSetFailed\(1.apply(DAGScheduler.scala:814) 在 scala.Option.foreach(Option.scala:257) ) 在 org.apache.spark.scheduler.DAGScheduler.handleTaskSetFailed(DAGScheduler.scala:814) 在 org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.doOnReceive(DAGScheduler. scala:1714) 在 org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1669) 在 org.apache.spark.scheduler.DAGSchedulerEventProcessLoop.onReceive(DAGScheduler.scala:1658) 在 org.apache.spark.util .EventLoop\)\(anon\)1.run(EventLoop.scala:48) 在 org.apache.spark.scheduler.DAGScheduler.runJob(DAGScheduler.scala:630) 在 org.apache.spark.SparkContext.runJob(SparkContext.scala:2022) ) 在 org.apache.spark.SparkContext.runJob(SparkContext.scala:2043) 在 org.apache.spark.SparkContext.runJob(SparkContext.scala:2062) 在 org.apache.spark.sql.execution.SparkPlan.executeTake( SparkPlan.scala:336) 在 org.apache.spark.sql.execution.CollectLimitExec.executeCollect(limit.scala:38) 在 org.apache.spark.sql.Dataset.org\(apache\)spark\(sql\)Dataset$\(collectFromPlan (Dataset.scala:2853) 在 org.apache.spark.sql.Dataset\)\(anonfun\)head\(1.apply(Dataset.scala:2153) 在 org.apache.spark.sql.Dataset\)\(anonfun\)head\(1.apply (Dataset.scala:2153) 在 org.apache.spark.sql.Dataset\)\(anonfun\)55.apply(Dataset.s cala:2837) 在 org.apache.spark.sql.execution.SQLExecution\(.withNewExecutionId(SQLExecution.scala:65) 在 org.apache.spark.sql.Dataset.withAction(Dataset.scala:2836) 在 org.apache。 spark.sql.Dataset.head(Dataset.scala:2153) 在 org.apache.spark.sql.Dataset.take(Dataset.scala:2366) 在 org.apache.spark.sql.execution.datasources.csv.TextInputCSVDataSource\) .infer(CSVDataSource.scala:147) 在 org.apache.spark.sql.execution.datasources.csv.CSVDataSource.inferSchema(CSVDataSource.scala:62) 在 org.apache.spark.sql.execution.datasources.csv.CSVFileFormat .inferSchema(CSVFileFormat.scala:57) 在 org.apache.spark.sql.execution.datasources.DataSource$\(anonfun\)7.apply(DataSource.scala:177) 在 org.apache.spark.sql.execution.datasources.DataSource $\(anonfun\)7.apply(DataSource.scala:177) 在 scala.Option.orElse(Option.scala:289) 在 org.apache.spark.sql.execution.datasources.DataSource.getOrInferFileFormatSchema(DataSource.scala:176) 在org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(数据S ource.scala:366) 在 org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:178) 在 org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:156) 在 sun.reflect.NativeMethodAccessorImpl .invoke0(本机方法)在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)在 java.lang.reflect.Method.invoke(Method.java :498) 在 py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) 在 py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357) 在 py4j.Gateway.invoke(Gateway.java:280) 在 py4j.commands .AbstractCommand.invokeMethod(AbstractCommand.java:132) 在 py4j.commands.CallCommand.execute(CallCommand.java:79) 在 py4j.GatewayConnection.run(GatewayConnection.java:214) 在 java.lang.Thread.run(Thread. java:748) Caused by: java.io.FileNotFoundException: File file:/home/ec2-user/PR_DATA_35.csv does not exist 可能底层文件已经更新.您可以通过在 SQL 中运行“REFRESH TABLE tableName”命令或通过重新创建所涉及的数据集/数据帧来显式使 Spark 中的缓存无效。在 org.apache.spark.sql.execution.datasources.FileScanRDD$\(anon\)1.org\(apache\)spark\(sql\)execution\(datasources\)FileScanRDD$\(anon\)\(readCurrentFile(FileScanRDD.scala:127) 在 org.apache。 spark.sql.execution.datasources.FileScanRDD\)\(anon\)1.nextIterator(FileScanRDD.scala:174) 在 org.apache.spark.sql.execution.datasources.FileScanRDD$\(anon\)1.hasNext(FileScanRDD.scala:105) 在org.apache.spark.sql.catalyst.expressions.GeneratedClass\(GeneratedIterator.processNext(未知来源)在 org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43)在 org.apache.spark.sql .execution.WholeStageCodegenExec\)\(anonfun\)8$\(anon\)1.hasNext(WholeStageCodegenExec.scala:395) 在 org.apache.spark.sql.execution.SparkPlan$\(anonfun\)2.apply(SparkPlan.scala:234) 在 org.apache .spark.sql.execution.SparkPlan$\(anonfun\)2.apply(SparkPlan.scala:228) 在 org.apache.spark.rdd.RDD$\(anonfun\)mapPartitionsInternal\(1\)\(anonfun\)apply\(25.apply(RDD.scala: 827) 在 org.apache.spark.rdd.RDD\)\(anonfun\)mapPartitionsInterna l\(1\)\(anonfun\)apply\(25.apply(RDD.scala:827) 在 org.apache.spark.rdd.MapPartitionsRDD.compute(MapPartitionsRDD.scala:38) 在 org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD) .scala:323) 在 org.apache.spark.rdd.RDD.iterator(RDD.scala:287) 在 org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87) 在 org.apache.spark。 scheduler.Task.run(Task.scala:108) 在 org.apache.spark.executor.Executor\)TaskRunner.run(Executor.scala:335) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) … 1 个以上

任何帮助表示赞赏。谢谢

原文由 Rajat Handa 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 382
1 个回答

引起:java.io.FileNotFoundException:文件文件:/home/ec2-user/PR_DATA_35.csv 不存在??

原文由 Frank 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题