SparkR内存不足错误

时间:2017-11-04 14:34:50

标签: java r apache-spark amazon-ec2 sparkr

我在AWS上有一个2节点测试集群,安装了spark-2.0.0-bin-hadoop2.7。

这是我用来启动群集的代码。

./spark-ec2 -k blah -i blah.pem -r us-west-1 -s 1 -t r3.2xlarge launch --copy-aws-credentials blah

在rstudio中运行这两行后,查看端口8080显示58.8GB(0.0 B已使用)内存。

Sys.setenv(SPARK_HOME="/root/spark")

library(SparkR, lib.loc = c(file.path(Sys.getenv("SPARK_HOME"), "R", "lib")))

当我运行此行并在端口8080上刷新页面时,内存使用量将更改为58.8 GB(使用53.8 GB)。

sparkR.session(master = "spark://[ip]:7077",

               sparkHome = '/root/spark',

               enableHiveSupport = FALSE)

当我尝试从数据帧创建一个消耗0.04857268 GB内存的火花数据帧时,我收到此错误:

acquisition <- as.DataFrame(orig)

17/11/04 14:27:23 WARN TaskSetManager: Stage 0 contains a task of very large size (166360 KB). The maximum recommended task size is 100 KB.
Exception in thread "dispatcher-event-loop-1" java.lang.OutOfMemoryError: Java heap space

我尝试添加此功能但得到同样的错误。

options(java.parameters = "-Xmx2048m")
install.packages("rJava")
library(rJava)

我被困住了。我花了三个周末在谷歌搜索这个问题,但无法弄明白。

感谢。

0 个答案:

没有答案