Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Spark模型保存到pyspark中后,操作系统无法看到它_Python_Apache Spark_Pyspark_Os.path - Fatal编程技术网

Python 将Spark模型保存到pyspark中后,操作系统无法看到它

Python 将Spark模型保存到pyspark中后,操作系统无法看到它,python,apache-spark,pyspark,os.path,Python,Apache Spark,Pyspark,Os.path,我的目标是保存一个spark模型,然后压缩它,但我遇到了问题,因为os.exists(path)找不到刚刚创建的模型。代码如下: ... model.write().save(model_location) model2 = PipelineModel(PipelineModel).load(model_location) # the model is loaded print(os.path.exists(model_location)) # prints False shutil.mak

我的目标是保存一个spark模型,然后压缩它,但我遇到了问题,因为
os.exists(path)
找不到刚刚创建的模型。代码如下:

...
model.write().save(model_location)
model2 = PipelineModel(PipelineModel).load(model_location)  # the model is loaded
print(os.path.exists(model_location))  # prints False
shutil.make_archive(model_location, 'zip', model_location)  # this fails, file not found
我认为问题的原因是: 但我仍然不知道如何修复它。显然,模型已经创建,因为我可以在之后将其加载到model2中,运行结束后,包含模型的文件夹就在那里。但是,除此之外,等待文件夹创建之类的操作也不起作用


或者可能是spark配置问题,我在Ambari集群中执行此操作,代码在我的本地计算机中工作,但不在那里,因此我不确定问题出在哪里。

您的错误是假设模型将保存到本地兼容POSIX的文件系统

ML模型使用标准的Spark SQL实用程序保存,因此将使用默认文件系统,在正常操作下,该文件系统将指向分布式文件系统,如HDFS

最有可能的情况是,您必须将模型(存储为拼花文件)复制到本地文件系统,并从那里使用它,尽管从总体描述来看,您需要中描述的方法之一