Scala 在spark standalone cluster中处理来自hdfs的数据时块丢失异常

Scala 在spark standalone cluster中处理来自hdfs的数据时块丢失异常,scala,hadoop,apache-spark,apache-spark-standalone,Scala,Hadoop,Apache Spark,Apache Spark Standalone,我在hadoop上运行spark,有2个worker和2个datanode。 第一台机器包含:sparkmaster、namenode、worker-1、datanode-1。 第二台机器包含:worker2、datanode2 在hadoop集群中,datanode-1:Notice.txt和datanode-2:README.txt上的/usr目录下有2个文件 我想从这两个文件中创建一个rdd,并计算行数 在第一台机器上,我与masterspark://masterIP:7077 [独立模式

我在hadoop上运行spark,有2个worker和2个datanode。 第一台机器包含:sparkmaster、namenode、worker-1、datanode-1。 第二台机器包含:worker2、datanode2

在hadoop集群中,datanode-1:Notice.txt和datanode-2:README.txt上的/usr目录下有2个文件

我想从这两个文件中创建一个rdd,并计算行数

在第一台机器上,我与masterspark://masterIP:7077 [独立模式]

然后在scala命令行上使用 val rdd=sc.textFile(“/usr/”) 但是当我执行count操作时,rdd.count()会抛出以下错误

(TID 2, masterIP, executor 1): org.apache.hadoop.hdfs.BlockMissingException: Could not obtain block: BP-1313298757-masterIP-1499412323227:blk_1073741827_1003 file=/usr/README.txt
worker-1正在选择NOTICE.txt,但是worker-2没有选择README.txt


我没有遇到问题,请提供任何帮助,谢谢

看来您的节点无法找到hdfs块。你能试试这个文件上的“hadoop fsck”文件名吗?它给了我以下输出:总大小:16344 B总目录:1总文件:2总符号链接:0总块(已验证):2(平均块大小8172 B)我不知道spark配置还是hadoop配置中缺少,在我的namenode和spark master上,它分别向我显示正确的datanodes和Worker。