0

我处于“中等”和“大”数据之间的那个空间。我有 # 个挑战:

  • 从服务器到本地机器的高效下载/ IO。

我的数据存储在亚马逊网络服务器上,目前我每天都下载整个数据集(变化代表 <5%)。

  • 在单台计算机上处​​理大型数据集,这样内存就不是问题了。

我想在我的笔记本电脑和台式电脑上拥有相同的开发体验。我在 AWS 上使用过 RStudio 的服务器应用程序,但应用程序本身有点慢,我更喜欢在本地使用 RStudio。

在这一点上,我并没有受到 CPU 能力的严重限制,主要是下载/IO 和内存。我应该学习什么来使这个过程更有效率?

4

1 回答 1

1

您没有提及您的实际计算是什么,因此很难提供好的建议,但对于内存不足的解决方案,请考虑:

  1. 将问题明确拆分为更小的问题(为每个“块”创建文件)
  2. 流式解决方案——一次可以处理几行数据
  3. 对于 R 中真正的内存不足工作,ff 和 BigMemory 包。
  4. 并行包等并行计算解决方案(不直接解决内存问题)

请记住,与内存解决方案相比,内存不足的解决方案可能会慢很多,并且需要更多的专业工作,因此第一步是尽可能购买更多的 RAM,特别是因为您是从小型机器开始的。如今,拥有> 256G RAM 的机器并不难买到。

对于数据传输,一定要尽可能使用增量解决方案,例如 rsync 并且在有意义的情况下(对数据集进行小的更改)——听起来这与您的用例相匹配。

于 2012-11-29T15:38:48.950 回答