问题描述
我正在使用8Gb(HIGGS dataset)大型数据集。在查看dbplyr
包装的小插图时(请参阅vignette('dbplyr')
),我碰到了这一行,
(如果您的数据适合存储在内存中,则将其放入数据库中没有任何好处:只会更慢且更令人沮丧。)
HIGGS数据集确实适合我机器上的内存,我的问题是:
- 这是总是吗?如果不是,什么时候不正确?
- 更普遍的是,即使数据合适,将数据保留在内存中也有性能上的好处,为什么?
编辑:在查看@Waldi提供的链接:RAM 100x faster than HDD之后,另一个问题是SSD将会如何改变?
解决方法
R占用大量内存,因此最好获得尽可能多的RAM。您拥有的RAM数量会限制您可以分析的数据集的大小。
添加固态硬盘(SSD)通常不会对R – vignette(dbplyr)
的速度产生太大影响,因为R将对象加载到RAM中。但是,引导时间和increase in your overall productivity since I/0 is much faster的减少使SSD驱动器成为了不错的选择。
library(benchmarkme)
是软件包基准测试,用于评估您的CPU号码处理能力。 CPU内核是您要探索的大数据性能的另一个领域。如果您使用的是CPU,则内核越多越好。
library(Multidplyr)
是partitions a data frame across multiple cores.的dplyr
后端
这样可以最大程度地减少移动数据所需的时间,并可以最大程度地提高并行性能。