我正在尝试将R连接到Teradata以将数据直接导入R进行分析.但是,我收到的错误是:
Error in .jcall(rp, "I", "fetch", stride, block) : java.lang.OutOfMemoryError: Java heap space
我尝试通过执行以下操作来设置我的R选项以增加JVM的最大堆大小:
options(java.parameters = "-Xmx8g")
我还尝试使用rJava函数初始化java参数.jinit
:.jinit(parameters="-Xmx8g")
.但仍然失败了.
计算出的数据大小应约为3G(实际上小于3G).
有人可以帮我吗?任何建议表示赞赏.
在加载rJava或任何其他软件包之前,您需要确保分配额外的内存.首先擦除环境(通过rm(list = ls())
),如果必须,重新启动R/Rstudio,并修改脚本开头的选项.
options(java.parameters = "-Xmx8000m")
例如参见https://support.snowflake.net/s/article/solution-using-r-the-following-error-is-returned-javalangoutofmemoryerror-gc-overhead-limit-exceeded