Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.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
Apache spark apachespark-Saving模型_Apache Spark_Apache Spark Ml - Fatal编程技术网

Apache spark apachespark-Saving模型

Apache spark apachespark-Saving模型,apache-spark,apache-spark-ml,Apache Spark,Apache Spark Ml,我目前正在ApacheSpark上工作,我正在尝试从web应用程序运行java代码。当我尝试以java应用程序的形式运行代码时,它工作得很好。但当我尝试将其部署为web应用程序时,当程序达到保存模型的阶段,即model.save(sparkcontext,modelpath)时,我收到一个permgen java.lang.OutOfMemory异常。但当我尝试将模型作为对象文件编写时,如: File modelFile = new File(modelPath); if(!mo

我目前正在ApacheSpark上工作,我正在尝试从web应用程序运行java代码。当我尝试以java应用程序的形式运行代码时,它工作得很好。但当我尝试将其部署为web应用程序时,当程序达到保存模型的阶段,即
model.save(sparkcontext,modelpath)
时,我收到一个
permgen java.lang.OutOfMemory异常。但当我尝试将模型作为对象文件编写时,如:

    File modelFile = new File(modelPath);
    if(!modelFile.exists()){

            modelFile.createNewFile();

    }
    FileOutputStream fout = new FileOutputStream(modelFile);
    ObjectOutputStream oout = new ObjectOutputStream(fout);
    oout.writeObject(model);
    oout.close();
它很好用。ApacheSpark中的
model.save()
是如何实现的

还有其他方法保存模型吗


提前感谢

这纯粹是Permgen内存问题。您可以尝试使用以下配置来解决您的问题

如果您使用的是Oracle提供的JVM,则可以将permgen内存增加
使用参数
-XX:MaxPermSize=256M(或其他空间量)
。如果您正在使用任何其他JVM,您可以阅读文档并尝试增加permgen内存

模型的类别是什么?我正在研究随机森林回归模型。@BalachandarS:模型是RDD吗?你想把RDD保存到文件中吗?是的,它有RDD和一个哈希映射@BalachandarS:你需要展示模型的实现,问题还不清楚。。如果您有一些RDD,那么您希望将其保存在一个文件中,您可以调用RDD.saveAsTextFile()方法。。它将调用模型类toString()方法。