加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

从Postgresql将大数据加载到R data.table

发布时间:2020-12-13 16:01:47 所属栏目:百科 来源:网络整理
导读:我将我的数据存储在 Postgresql服务器中.我想将一个包含15mil行的表加载到data.frame或data.table 我使用RPostgreSQL来加载数据. library(RPostgreSQL)drv - dbDriver("PostgreSQL")con - dbConnect(drv,...)# Select data from a tablesystem.time(df - dbG
我将我的数据存储在 Postgresql服务器中.我想将一个包含15mil行的表加载到data.frame或data.table

我使用RPostgreSQL来加载数据.

library(RPostgreSQL)
drv <- dbDriver("PostgreSQL")
con <- dbConnect(drv,...)

# Select data from a table
system.time(
df <- dbGetQuery(con,"SELECT * FROM 15mil_rows_table")
)

将数据从DB加载到df需要20分钟.我使用谷歌云服务器,它有60GB RAM和16核CPU

我该怎么做才能减少加载时间?

解决方法

不确定这是否会减少加载时间,因为它可以减少加载时间,因为这两个过程都具有很高的性能效率.您可以发表关于调整的评论.

>使用bash运行psql作为转储表到csv:

COPY 15mil_rows_table TO '/path/15mil_rows_table.csv' DELIMITER ',' CSV HEADER;

>在R中只是畏惧它:

library(data.table)
DT <- fread("/path/15mil_rows_table.csv")

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读