使用SQlcontext在火花中加载csv时出现错误 - python

enter image description here

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在load(自身,
路径,格式,架构,**选项)
157个self.options(** options)
158如果isinstance(path,basestring):
-> 159 return self._df(self._jreader.load(path))
160 elif path不是None:
第161回

/home/ec2-user/spark/python/lib/py4j-0.10.4-src.zip/py4j/java_gateway.py
在通话中(self,* args)1131答案=
self.gateway_client.send_command(command)1132 return_value
= get_return_value(
-> 1133答案,self.gateway_client,self.target_id,self.name)1134 1135 for temp_args中的temp_arg:

/home/ec2-user/spark/python/pyspark/sql/utils.pyc in deco(* a,** kw)
61 def deco(* a,** kw):
62试试:
---> 63返回f(* a,** kw)
64,除了py4j.protocol.Py4JJavaError如e:
65秒= e.java_exception.toString()

/home/ec2-user/spark/python/lib/py4j-0.10.4-src.zip/py4j/protocol.py
在get_return_value(答案,gateway_client,target_id,名称)中
第317章;
318“调用{0} {1} {2}时发生错误。\ n”。
-> 319格式(target_id,“。”,名称),值)
320其他:
第321章

Py4JJavaError:调用o312.load时发生错误。 :
org.apache.spark.SparkException:由于阶段失败,作业中止了:
5.0阶段的任务0失败4次,最近一次失败:任务0.3丢失
在阶段5.0(TID 23,172.31.17.233,执行者0):
java.io.FileNotFoundException:文件文件:/home/ec2-user/PR_DATA_35.csv
不存在可能基础文件已更新。
您可以通过运行'REFRESH来显式使Spark中的缓存无效
TABLE tableName'命令(通过SQL或通过重新创建数据集/ DataFrame)
参与。在
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 $ mapPartitionsInternal $ 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.apply(DAGScheduler.scala:1487)

org.apache.spark.scheduler.DAGScheduler $$ anonfun $ abortStage $ 1.apply(DAGScheduler.scala:1486)

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.scala: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(DataSource.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)由以下原因引起:
java.io.FileNotFoundException:文件文件:/home/ec2-user/PR_DATA_35.csv
不存在可能基础文件已更新。
您可以通过运行'REFRESH来显式使Spark中的缓存无效
TABLE tableName'命令(通过SQL或通过重新创建数据集/ DataFrame)
参与。在
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 $ mapPartitionsInternal $ 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个

任何帮助表示赞赏。谢谢

python大神给出的解决方案

与其他人所说的相反,当您从文件夹中读取数据,对其进行修改并将其保存在最初读取的数据之上时,通常会在Spark中发生此错误。

只需尝试将第一组数据保存在一个临时文件夹中,或使用此answer中描述的解决方案。

Python sqlite3数据库已锁定 - python

我在Windows上使用Python 3和sqlite3。我正在开发一个使用数据库存储联系人的小型应用程序。我注意到,如果应用程序被强制关闭(通过错误或通过任务管理器结束),则会收到sqlite3错误(sqlite3.OperationalError:数据库已锁定)。我想这是因为在应用程序关闭之前,我没有正确关闭数据库连接。我已经试过了: connectio…

用大写字母拆分字符串,但忽略AAA Python Regex - python

我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…

Python-熊猫描述了抛出错误:无法散列的类型“ dict” - python

更新:我正在使用“ Socrata开源API”中的一些示例代码。我在代码中注意到以下注释:# First 2000 results, returned as JSON from API / converted to Python # list of dictionaries by sodapy. 我不熟悉JSON。我已经下载了一个数据集,并创建了一个包含大量…

子条件的python条件覆盖 - python

我试图找到一个python代码覆盖率工具,该工具可以衡量语句中是否包含子表达式:例如,我想看看下面的示例是否涵盖了condition1 / condition2 / condtion3?if condition1 or condition2 or condition3: x = true_value python大神给出的解决方案 对此的唯一合理答案是:当前…

USB设备发行 - python

我目前正在使用PyUSB。由于我不熟悉USB,所以我不知道如何执行以下操作。我已经从Python PyUSB成功连接到我的USB设备硬件。在代码中,我需要重置USB设备硬件。通过向硬件发送命令来完成。现在,在硬件重置后,我想从Python PyUSB释放当前的USB设备。然后,我想在重置后将其重新连接到USB设备硬件。请让我知道,如何释放USB设备连接和接口…