我正在具有两个工作程序节点的Spark独立群集中运行PySpark程序。我没有使用像HDFS这样的任何分布式文件系统,而是使用sshfs挂载了目录。
我的程序需要一个安装在工作节点上的检查点目录,我将该路径作为普通文件路径提供,但是由于找不到文件而给我错误。有没有一种方法可以以正确的形式指定挂载的目录路径。
我的代码是:
from pyspark.sql import SparkSession
spark = SparkSession.builder.master('spark://172.16.12.200:7077').appName('new').getOrCreate()
ndf = spark.read.json("Musical_Instruments_5.json")
pd=ndf.select(ndf['asin'],ndf['overall'],ndf['reviewerID'])
spark.sparkContext.setCheckpointDir("/home/npproject/checkpoint1")
from pyspark.ml.evaluation import RegressionEvaluator
from pyspark.ml.recommendation import ALS
我的错误是:
Py4JJavaError: An error occurred while calling o1027.setCheckpointDir.
: java.io.FileNotFoundException: File /home/npproject/checkpoint1 /8d46ab20-6fd6-4433-9dea-9c0d94a0b92c does not exist
at org.apache.hadoop.fs.RawLocalFileSystem.deprecatedGetFileStatus(RawLocalFileSystem.java:611)