我正在使用R和库“ RPostgreSQL”和“ rpostgis”从R环境中导出shapefile,但是收到一条错误消息,提示您导出1.4GB的shapefile;
"Creating new table...
Using writeWKT from rgeos package...
Error in paste(d1, collapse = ",") : result would exceed 2^31-1 bytes"
Error in pgInsert(con, name = c("future_mob_ofcom18", "ofcom18_oa"), ofcom18_oa, :
Table preparation failed. No changes made to database.
我以前使用过该软件包,下面的代码适用于小于此大小的空间文件,但失败了。
我已经尝试过memory.size()
和memory.limit()
,但是没有运气。
我的系统具有32GB的RAM,我正在使用64位版本的R的Windows计算机(64位)上工作。我知道32位计算机的临时内存存在限制,因此这并不适用。看着任务管理器,执行此操作时我仅使用10GB。
此RPostGIS桥是否有限制?或者我错过了什么?
# PostGRES bridge
library(RPostgreSQL)
# PostGIS bridge
library(rpostgis)
# create a connection to local postgis server
con <- dbConnect(dbDriver("PostgreSQL"),
user="postgres",
password="pwd", # ask for password
port=5432,
dbname="localtest")
# Insert oa into schema
pgInsert(con,
name = c("future_ofcom18", "ofcom18_oa"),
ofcom18_oa ,
geom='geom',
new.id = "gid")