我有一个R程序,它通过RODBC包查询ODBC数据库,并通过RODBC::sqlQuery以data.frame格式导出结果。然后它将结果转换为data.table格式,因为我习惯于使用这个包。
主要的问题是一些查询返回大数据,而sqlQuery开始变得有点慢。我很好奇,将数据直接以data.table格式导出到R是否会提高性能,因为我知道在处理大数据时,它比通常的data.frame更快。但是我没有找到一种方法去做。
有没有一种方法可以通过R连接到数据库,并将查询结果导出为data.table而不是data.frame?
发布于 2021-11-10 15:05:47
大数据通常意味着一台服务器的存储空间不够。数据库是为处理查询而设计的,下载大数据块的速度很慢。因此,您应该在数据库中执行SQL,而不是将所有内容都下载到R中。看看dbplyr,它允许您在R中编写一个查询,然后在调用collect()或compute()之后在数据库中执行该查询
https://stackoverflow.com/questions/69915517
复制相似问题