use*_*601 20 memory heap r rjdbc
在运行RJDBC 0.2-4的dbGetQuery时出现以下错误:
Error in .jcall(rp, "I", "fetch", stride) :
java.lang.OutOfMemoryError: Java heap space
Run Code Online (Sandbox Code Playgroud)
以下是我的代码:
Sys.setenv(JAVA_HOME='C:/Program Files (x86)/Java/jdk1.7.0_25')
options(java.parameters='-Xmx1g')
library(rJava)
library(rjson)
library(RJDBC)
# Output Java version
.jinit()
print(.jcall("java/lang/System", "S", "getProperty", "java.version"))
jdbcDriver <<- JDBC(driverClass="oracle.jdbc.OracleDriver", classPath="C:/lib/dashboard_lib/ojdbc6.jar")
jdbcConnection <<- dbConnect(jdbcDriver, "...", "...", "...")
dataset <<- dbGetQuery(jdbcConnection, "select * from OPR_DATA.MV_REG_CTRY_MS_QUARTER_AMT")
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我,非常感谢提前
fc9*_*.30 17
在加载RJDBC包之前,只需将java.parameters更改为8GB:
options(java.parameters = "-Xmx8048m")
library("RJDBC")
Run Code Online (Sandbox Code Playgroud)
使用以下方法对我来说会失败:
options(java.parameters = "-Xmx8048m")
library("RJDBC")
Run Code Online (Sandbox Code Playgroud)
然而,
options(java.parameters = "-Xmx8g")
library("RJDBC")
Run Code Online (Sandbox Code Playgroud)
工作。