n.e*_*e.w 8 csv parallel-processing r bigdata
一旦CSV文件是通过加载read.csv
,这是相当琐碎的使用multicore
,segue
等玩弄于CSV数据.然而,阅读它是时候下沉了.
意识到最好使用mySQL等.
假设使用运行R2.13的AWS 8xl集群计算实例
规格如下:
Cluster Compute Eight Extra Large specifications:
88 EC2 Compute Units (Eight-core 2 x Intel Xeon)
60.5 GB of memory
3370 GB of instance storage
64-bit platform
I/O Performance: Very High (10 Gigabit Ethernet)
Run Code Online (Sandbox Code Playgroud)
任何想法/想法都非常感激.
如果您使用fread
,可能不需要并行data.table
.
library(data.table)
dt <- fread("myFile.csv")
Run Code Online (Sandbox Code Playgroud)
对这个问题的评论说明了它的力量.这也是我自己的经验的一个例子:
d1 <- fread('Tr1PointData_ByTime_new.csv')
Read 1048575 rows and 5 (of 5) columns from 0.043 GB file in 00:00:09
Run Code Online (Sandbox Code Playgroud)
我能够在10秒内读取104万行!
你能做的就是使用scan
. 它的两个输入参数可能会很有趣:n
和skip
。您只需打开两个或多个到该文件的连接,然后使用skip
和n
选择要从文件中读取的部分。有一些注意事项:
但你可以尝试一下,看看它是否能提高你的速度。