Database 加速sqlFetch()

Database 加速sqlFetch(),database,r,Database,R,我正在使用Oracle数据库,希望获取一个包含3000万条记录的表 library(RODBC) ch <- odbcConnect("test", uid="test_user", pwd="test_pwd", believeNRows=FALSE, readOnly=TRUE) db <- sqlFetch(ch, "test_table") 库(RODBC) ch您可以尝试通过R终端进行系统调用 使

我正在使用Oracle数据库,希望获取一个包含3000万条记录的表

library(RODBC)
ch <- odbcConnect("test", uid="test_user", 
                  pwd="test_pwd", 
                  believeNRows=FALSE, readOnly=TRUE)
db <- sqlFetch(ch, "test_table")
库(RODBC)

ch您可以尝试通过R终端进行系统调用
使用system()命令创建mySQL shell。从外部处理数据,只加载所需的输出

RODBC对抗甲骨文的速度太慢了。转储到数据库端的本地csv,通过网络文件共享传输,然后通过sqldf::read.csv.sql加载到R中。请看:谢谢你的链接。您是否有过“ROracle”套装在性能方面是否更好的经验?对我来说,创建转储似乎真的违反直觉。@majom在工作中,我必须针对Oracle数据仓库编写查询,将数据拉入R的速度非常慢。我从来没能让ROracle跑起来。我尝试编写有针对性的查询来获取所需的数据,而不是sqlFetch。这最大限度地减少了数据传输(一点),并利用了Oracle的数据库速度。我处理的数据没有您的大,因此我的流程适合我的需要(目前)。不太理想,但很有效。谢谢,B。我刚刚看到ROracle和RJDBC之间的以下性能比较。也许,我真的必须尝试ROracle,尽管我不确定RODBC和RJDBC在性能上是否100%可比。