spark读取不了本地文件是怎么回事
 textFile=sc.textFile("file:///home/hduser/pythonwork/ipynotebook/data/test.txt")
stringRDD=textFile.flatMap(lambda line:line.split(' '))
stringRDD.collect()

我此路径下是有test文件的:

图片说明

错误是:

 Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.spark.SparkException: Job aborted due to stage failure: Task 1 in stage 8.0 failed 4 times, most recent failure: Lost task 1.3 in stage 8.0 (TID 58, 192.168.56.103, executor 1): java.io.FileNotFoundException: File file:/home/hduser/pythonwork/ipynotebook/data/test.txt does not exist

。
。
。
Driver stacktrace:
    at org.apache.spark.scheduler.DAGScheduler.org$apache$spark$scheduler$DAGScheduler$$failJobAndIndependentStages(DAGScheduler.scala:1599)
    。
    。
    。
    Caused by: java.io.FileNotFoundException: File file:/home/hduser/pythonwork/ipynotebook/data/test.txt does not exist

而且发现若我把代码中test.txt随便改一个名字,比如ttest.txt(肯定是没有的文件)
错误竟然发生了变化:

 Py4JJavaError: An error occurred while calling z:org.apache.spark.api.python.PythonRDD.collectAndServe.
: org.apache.hadoop.mapred.InvalidInputException: Input path does not exist: file:/home/hduser/pythonwork/ipynotebook/data/tesst.txt
    at org.apache.hadoop.mapred.FileInputFormat.singleThreadedListStatus(FileInputFormat.java:287)
    at org.apache.hadoop.mapred.FileInputFormat.listStatus(FileInputFormat.java:229)
    at org.apache.hadoop.mapred.FileInputFormat.getSplits(FileInputFormat.java:315)
    at org.apache.spark.rdd.HadoopRDD.getPartitions(HadoopRDD.scala:200)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
    at scala.Option.getOrElse(Option.scala:121)
    at org.apache.spark.rdd.RDD.partitions(RDD.scala:251)
    at org.apache.spark.rdd.MapPartitionsRDD.getPartitions(MapPartitionsRDD.scala:35)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
    at scala.Option.getOrElse(Option.scala:121)
    at org.apache.spark.rdd.RDD.partitions(RDD.scala:251)
    at org.apache.spark.api.python.PythonRDD.getPartitions(PythonRDD.scala:53)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:253)
    at org.apache.spark.rdd.RDD$$anonfun$partitions$2.apply(RDD.scala:251)
    at scala.Option.getOrElse(Option.scala:121)
    at org.apache.spark.rdd.RDD.partitions(RDD.scala:251)
    at org.apache.spark.SparkContext.runJob(SparkContext.scala:2092)
    at org.apache.spark.rdd.RDD$$anonfun$collect$1.apply(RDD.scala:939)
    at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:151)
    at org.apache.spark.rdd.RDDOperationScope$.withScope(RDDOperationScope.scala:112)
    at org.apache.spark.rdd.RDD.withScope(RDD.scala:363)
    at org.apache.spark.rdd.RDD.collect(RDD.scala:938)
    at org.apache.spark.api.python.PythonRDD$.collectAndServe(PythonRDD.scala:153)
    at org.apache.spark.api.python.PythonRDD.collectAndServe(PythonRDD.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:483)
    at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
    at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
    at py4j.Gateway.invoke(Gateway.java:282)
    at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
    at py4j.commands.CallCommand.execute(CallCommand.java:79)
    at py4j.GatewayConnection.run(GatewayConnection.java:214)
    at java.lang.Thread.run(Thread.java:745)

注意:
此时我是以spark集群跑的:'spark://emaster:7077'
若是以本地跑就可以找到本地的那个test.txt文件
找hdfs文件系统的文件可以找到(在spark集群跑情况下)
。。。处由于字数显示省略了些不重要的错误提示,若想知道的话可以回复我
跪求大神帮助~感激不尽!!!

0

1个回答

如果程序中读取的是本地文件,那么,要在所有的节点都有这个数据文件,只在master中有这个数据文件时执行程序时一直报找不到文件

解决方式1:让每个Worker节点的相应位置都有要读取的数据文件。

解决方式2:直接将数据文件上传到hdfs,达到数据共享。

0
CSDN_Black
csdn_black 多谢
大约一年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Spark读取不了本地文件&&Spark默认读取HDFS文件系统
问题描述nIn [10]: inputFile = "file:///home/learning-spark/files/ham.txt"nnIn [11]: input = hiveCtx.read.json(inputFile)n19/01/23 17:12:51 WARN scheduler.TaskSetManager: Lost task 0.0 in stage 3.0 (TID 21...
Error:spark streaming 的textFileStream读取不了数据 ,即:在目录中创建文件,但是在streaming程序中是没有读取对应数据
1.现象nnSparkStreaming从本地文件夹"..\WorkspaceforMyeclipse\scalaProjectMaven\datas"中读取数据,并进行DStream/RDD处理,但是,在datas中创建文件并且写入文字,程序都无法读取。nn nn2.原因:nnSparkStreaming需要读取流式的数据,而不能直接从datas文件夹中创建。nn nn3.解决:nn创建文件 t...
spark连接并读取本地文件报错总结
1.scala.Predef$.refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;nn错误原因:scala版本与spark版本兼容问题导致,可在maven仓库看spark所使用jar包支持的scala版本。nn注意点:在idea中全局设置调整scala版本时,注意该项目是否对改变生效。nn2.java.lang.C...
Spark Streaming 本地测试:读取Windows本地文本文件
Spark Streaming 本地测试n准备工作就不说了,网上一大堆,jdk,sdk,环境搭建。。。n直接进入正题n本地idea Spark Streaming 读取 Windows本地文本文件两种方法:n先提一下:测试前,请先写好SparkStreaming程序,并且跑起来,让它开始监听,然后你再传数据,不然你传了数据之后,再开监听,还监听个毛啊n(1)通过ssc的socketTextStre...
spark入门实战windows本地测试程序
在做Spark开发时,一般会在windows下进行Spark本地模式程序调试,在本地调试好了再打包运行在Spark集群上。因此需要在windows上进行Spark开发配置。本文将给出三种开发工具的配置:1、使用eclipse java api开发;2、使用scala IDE开发;3、使用IntelliJ IDEA 开发。rn1、windows下环境rn在安装开发软件之前,首先需要安装JAVA 和S
Spark Streaming 读取本地文件压文件
package streamings.studysnnimport org.apache.spark.SparkConfnimport org.apache.spark.streaming.dstream.DStreamnimport org.apache.spark.streaming.{Seconds, StreamingContext}nn/**n * Created by yunxing
spark集群模式下textFile读取file本地文件报错解决
前言n如果在spark-shell中使用textFile(“file://path”)演示,在local模式下是没有问题的,因为毕竟就是在本机运行,读取本地的文件。但是如果spark-shell --master指定spark集群的话,这样运行就会有问题,会报找不到文件的错误。n解决方案n那么解决的方案其实也比较简单,就是在所有的集群节点上相同的path下上传该文件。然后在textFile(“fi...
关于在Spark集群中读取本地文件抛出找不到文件异常的问题
关于在Spark集群中读取本地文件抛出找不到文件异常的问题nn一般情况下,我们在本地ide里写好程序,打成jar包上传到集群取运行,有时候需要读取数据文件,这个时候需要注意,如果程序中读取的是本地文件,那么,要在所有的节点都有这个数据文件,只在master中有这个数据文件时执行程序时一直报找不到文件nnn解决方式1:让每个Worker节点的相应位置都有要读取的数据文件。n解决方式2:直接将数据文件
spark streaming 的textFileStream读取不了数据原因分析
这路径如果hdfs的路径 你直接hadoop fs  -put 到你的监测路径就可以,如果是本地目录用file:///home/data 你不能移动文件到这个目录,必须用流的形式写入到这个目录形成文件才能被监测到。
Spark读取本地文件操作
import org.apache.spark.SparkConf;nimport org.apache.spark.api.java.JavaRDD;nimport org.apache.spark.api.java.JavaSparkContext;nimport org.apache.spark.api.java.function.Function;nimport org.apache.sp
IDEA本地运行spark程序
n n n nnidea 里面 加入scala sdk和 spark jarnnnnnnnnnn本地安装spark 并启起来n本地安装scalannn代码里面confnval conf = new SparkConf().setAppName(appName).setMaster("spark://ziwei.local:7077")n加入master 指向。nloc...
Spark hello word(加载本地文件和加载hdfs文件)
本节内容主要完成: 使用sparkshell记载本地文件和hdfs文件nspark处理的文件可能存在于本地文件系统中,也可能存在分布式文件系统中n本地文件加载n创建一个测试文件n[root@sandbox home]# cd /home/guest/nn// 在guest 目录下创建一个文件夹n[root@sandbox guest]# mkdir erhuann// 在 新建的文件夹中创建一
SparkStreaming--输入源(本地文件)
//输入源nobject WordCountHDFSSource {n def main(args: Array[String]): Unit = {n System.setProperty("hadoop.home.dir", "E:\\software\\bigdate\\hadoop-2.6.0-cdh5.15.0\\hadoop-2.6.0-cdh5.15.0")n val...
IDEA读取本地文件进行处理的方式
第一种方式:n利用main中参数args方式,程序如下:nnpackage algorithmnimport org.apache.spark.{SparkContext, SparkConf}nnobject WordCount {n def main(args: Array[String]) {n //第一步:spark运行的环境,这个是必须的步骤n val conf =
SparkStreaming读取外部文件
scala语言:nn方法1nnnval path = "/data1/work/config.properties"ntry {n opinionDictPath = HDFSUtil.getProperties(path, "opinionDictPath")n println("opinionDictPath 2 is " + opinionDictPath)n} catch {n ca...
spark写 本地文件报错
环境:spark1.6,window10,Hadoop2.6nn报错:rdd.saveastextFile(outPath)nn原因:nn.在spark bin目录下没有winutils.exe问价n 本地dill问价有损坏n c/windows/system32中没有hadoop.dll文件n解决:查看文件夹,没有文件去下载并放到文件夹下;如果有文件尝试修复本地环境,下载DirectX Repa...
Spark学习(文件读取路径)
在不同的启动模式下,加载文件时的路径写法是不一样的,对于local模式下,默认就是读取本地文件,而在standlone或者yarn-client,或者cluster模式下,默认读的都是hdfs文件系统,这几种模式下很难读取本地文件(这是很显然的事情,但你可以通过指定节点的文件服务曲线救国)。下面的代码在local模式下有效,在其它模式下无效:var theP1 = sc.textFile("fil
Spark Streaming实时处理本地数据流
每隔20s监听本地文件夹“/home/hduser/Streamingtext”下新生成的文本文件,对新文件中的各单词个数进行统计/*nStreamingtext下操作文件应注意以下几点:n1.监控目录下的文件应该具有统一的数据格式,避免在内部解析时报错。n2.文件必须是在监控目录下创建,可以通过原子性的移动或重命名操作,放入目录。n3.一旦移入目录,文件就不能再修改了,如果文件是持续写入的话,新的
Scala shell 读取本地文件
scala shell 读取本地文件
Spark实战(一):spark读取本地文件输出到Elasticsearch
rn对于spark的典型应用场景为批处理,一般由基本数据源(文件系统如:hdfs)或者高级数据源(flume、kafka)作为spark的数据接入端。输出一样可以是文件系统或数据库等等。本文介绍一个用java写的demo程序,功能是从本地接收数据,经过spark处理之后输出到Elasticsearch。rnrn先上代码:rnmavenrn <dependency>rn <groupId...
spark-stream 读取静态文件几点注意
spark-streaming在读取hdfs或者本地目录下的静态文件时需要注意的几点:一、读取路径为读取文件所在的上一级文件夹,和所读取文件统计目录下的文件夹中的内容不会被读取(path路径只能写到文件夹,否则报空指针错误,但程序不会停止)二、读取文件数据时,把要处理的数据文件put或者mv到指定的文件加下,不然streaming没有数据输出三、sparkstreaming可以监控流式数据的写入...
Spark_Spark on YARN 提交配置文件,读取配置文件
 nnSpark ON YARN 的官方文档,基于Spark 2.1.1nnhttp://spark.apache.org/docs/2.1.1/running-on-yarn.htmlnnnnTo use a custom log4j configuration for the application master or executors, here are the options:nnupl...
使用sparkSession读取mac上的.csv文件出现的乱码问题解决方案
如题nn小编学习spark的时候电脑是windows系统,spark版本是2.2.0,但是工作了换成了mac,在工作的时候不免踩些没有踩过的坑。nnWindows系统下使用以下方式读取本机的.csv文件是没问题的(前提是字段以’,’隔开,行用’\n’隔开)。nnnSparkSession ss = SparkSession.builder().master("local[*]").appName(...
SparkSQL读取json文件简单实现(一)
运行前提: n搭建Hadoop + Spark集群,安装jdk1.8及以上版本,Scala2.11,maven3nn1、新建maven项目nn n这里需要注意的是我们为了方便,直接勾选Create from archetype,然后从下面列表中选择scala archetype simple nn2、填写GAVnn这里按照个人设置,说白了GroupID就是公司的域名倒过来写 nartifactId...
记录一次用spark java写文件到本地(java推荐算法)
nimport org.apache.spark.api.java.JavaRDD;nimport org.apache.spark.ml.evaluation.RegressionEvaluator;nimport org.apache.spark.ml.recommendation.ALS;nimport org.apache.spark.ml.recommendation.ALSModel;...
spark rdd读取文件
rdd读取一个文件nval rdd = sc.textFile("hdfs://172.20.20.17:9000/tmp/wht/account/accounts.txt").map(_.split(","))nnnrdd读取多个文本文件nval rdd = sc.textFile("hdfs://172.20.20.17/tmp/wht/account/accounts.txt,hdfs://...
Spark2.1.0 读取外部txt并以DataFrame输出
需求:使用Spark2.1.0开始Spark的开发,但是网上2.0之后的教程不多,所以自己写一个。 n ps:官网的教程也有写 n http://spark.apache.org/docs/2.1.0/sql-programming-guide.html#data-sourcesnnnnn外部文件txt,文件内容:全是json串nn代码:nnnnimport org.apache.spark.
【spark】使用scala读取项目中的文件的方法
在IDAL下面读取本地文件,可以使用绝对路径也可以使用相对路径n一,直接路径的表达:nnval path2 ="E:\\data\\TEST1.txt"nval data = sc.textFile(path2)data.foreach(println)n直接将文件的绝对路径放在某个变量中,然后再使用textFile()读取里面的内容nn但是一般开发都采用这种方法吧n二,相对路径
Spark入门单机版安装和操作本地和HDFS文件
一、Spark单机版安装nn       Spark部署模式主要是四种:Local模式(单机模式,是本文讲的方式,仅供熟悉Spark和scala入门用)、Standalone模式(使用Spark自带的简单集群管理器,计算数据不是特别庞大)、YARN模式(使用YARN作为集群管理器,配合hadoop集群使用)和Mesos模式(使用Mesos作为集群管理器,配合docker)。nn      1.1、...
SparkSql——读文件写文件(一)
package spark.SparkSqlnnimport org.apache.spark.sql.SparkSessionnnobject SparkSql2 {n def main(args: Array[String]): Unit = {n //创建sqlSessionn val spark = SparkSession.builder().master("local[3...
Spark读取本地数据到数据库
主程序rnimport org.apache.spark.broadcast.Broadcastrnimport org.apache.spark.rdd.RDDrnimport org.apache.spark.{SparkConf, SparkContext}rnrnobject ProvinceAndIpDemo {rnrn def main(args: Array[String]): Unit = {...
VS2010编写的服务
求高手帮忙看下,断线报警器启动不了是怎么回事
Spark【学习笔记】 textfile读取 HDFS 文件分区 [压缩与非压缩]
Flumenn本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:nnnMarkdown和扩展Markdown简洁的语法n代码块高亮n图片链接和图片上传nLaTex数学公式nUML序列图和流程图n离线写博客n导入导出Markdown文件n丰富的快捷键nnnnn快捷键nnn加粗 Ctrl + B n斜体 Ctrl + I n引用 Ctrl +
Spark读取与写入文件
入口nn在 2.3.0 的Spark版本中, SparkSession是统一的入口了nnnn//创建 SparkSessionnval spark = SparkSessionn .buildern .appName('MySparkApp')n .enableHiveSupport() //开启访问Hive数据, 要将hive-site.xml等文件放入Spark的...
Spark Scala 读取GBK文件的方法
1. 在生产环境下,很多文件是GBK编码格式的,而SPARK 常用的textFile方法默认是写死了读UTF-8格式的文件,其他格式文件会显示乱码 nn用如下代码实现读取GBK文件的方法nnnimport org.apache.hadoop.io.{LongWritable, Text}nimport org.apache.hadoop.mapred.TextInputFormatnimport ...
SparkStreaming部分:updateStateByKey算子(包含从Linux端获取数据,flatmap切分,maptopair分类,写入到本地创建的文件夹中)【Java版纯代码】
npackage com.bjsxt;nnimport java.util.List;nnimport org.apache.spark.SparkConf;nimport org.apache.spark.api.java.function.FlatMapFunction;nimport org.apache.spark.api.java.function.Function2;nimport o...
DataFrame读取本地文件
nimport pandas as pdnn# jiazhi = pd.read_excel('C:/Users/Administrator/Desktop/10月16日 - 11月20日工贝价值核算_2018-11-20.xlsx')n# # # print(jiazhi.shape)n# # print(jiazhi.head)n#n# # print(jiazhi.columns)n# p...
Spark DataFrame读取外部文件并解析数据格式
Spark DataFrame读取外部文件并解析数据格式nSpark DataFame实际是DataSet的一个特殊类型,DataFrame对sql过程做很了很多优化。现在DataFrame用起来和Python的Pandas一样方便了,这里记录一下DataFrame读取外部文件并解析的过程。ntype DataFrame = Dataset[Row]nnspark读取csv文件有许多参数可以设置,...
SparkSQL写入多种文件格式
需求:nn将数据库中的数据读取出来并以text  json  csv  parquet四种格式写入到本地文件或者hdfs中nncsv格式:能够以excel的形式打开nn 代码实现:nnnpackage cn.ysjh0014.SparkSqlnnimport java.util.Propertiesnnimport org.apache.spark.sql._nnobject SparkSqlJd...
Spark核心编程:创建RDD(集合、本地文件、HDFS文件)
Spark核心编程:创建RDD(集合、本地文件、HDFS文件)
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 大数据视频下载不了 什么是区什么是区块链技术

相似问题

1
spark sql如何执行delete
2
可否让spark算子执行到某一步时,通过某些控制条件,让整个spark程序停止,或者在那一步保存结果到文件?
0
可否让spark算子执行到某一步时,通过某些控制条件,让整个spark程序停止,或者在那一步保存结果到文件?
2
Spark中如何将多个LabeledPoint合并成一个LabeledPoint,用以训练分类模型
1
如何将spark读入的txtRDD文本转为Vector格式
1
spark的dataframe中如何提取某一列数据的类型做判断?
1
java里调用scala的HashMap[Long,Long],返回的是HashMap[Object,Object]?
1
求算法,一篇论文中的spark随机森林并行问题。
1
spark on yarn 8088界面只有一个程序是Running状态,其他都是ACCEPTED状态
1
使用livy提交spark任务失败
2
当jar在hdfs的时候提交spark job报错
2
为什么Spark只会惰性计算RDD?
2
在Java web中怎么提交一个spark job任务?
1
spark shell在存运算结果到hdfs时报java.io.IOException: Not a file: hdfs://mini1:9000/spark/res
1
spark一般任务的初始并行度怎么确定?
1
spark pair RDD创建操作
2
spark submit 提交集群任务后,spark Web UI界面不显示,但是有4040界面,显示local模式
1
Spark提交作业为什么一定要conf.setJars(),它的具体作用到底是什么?
2
如何用spark实现:编写spark程序调用外部程序或者调用动态链接库函数,对批量文件进行处理?
1
spark读取kafka数据, 缓存当天数据