如何将进程从本地 R 直接传递到 Amazon EC-2 实例?
Posted
技术标签:
【中文标题】如何将进程从本地 R 直接传递到 Amazon EC-2 实例?【英文标题】:How can I directly pass a process from local R to an Amazon EC-2 Instance? 【发布时间】:2012-11-13 01:41:37 【问题描述】:我一直在研究在 EC2 上运行 R,但我想知道并行/集群计算与此设置有何不同。我环顾四周,但我无法找到这方面的教程。
基本上我想做的是让 R (Rstudio) 在我的笔记本电脑上运行,并完成大部分工作,但是当我有一个大操作要运行时,将它显式传递给 AWS 从属实例完成所有繁重的工作。
据我所知,雪/降雪套餐似乎是答案......但我不确定如何。
我正在使用http://bioconductor.org/help/bioconductor-cloud-ami/(ssh)上的教程来运行 R。本教程确实提到了并行/集群,但似乎是在不同的 AWS 实例之间。
任何帮助都会很棒。干杯。
【问题讨论】:
【参考方案1】:如果您只需要一个从属实例,我发现最简单的方法是在该实例上并行运行它,而不是使用您的 PC 作为主实例。
您可以在 PC 上编写脚本并将其推送到运行 R 的多核服务器,然后使用所有内核并行运行它。
例如将此上传到 4 核 AWS 实例:
library(snowfall)
sfInit(parallel=TRUE,cpus=4,slaveOutfile="log.txt")
vars = c(1:100)
#send variables to all processors
sfExportAll()
#Run this in parallel
results = sfLapply(vars, exp)
#Stop parallel processing
sfStop()
#save results
save(results, file = "results.RData")
【讨论】:
以上是关于如何将进程从本地 R 直接传递到 Amazon EC-2 实例?的主要内容,如果未能解决你的问题,请参考以下文章
如何将本地 MySQL 数据库同步到 Amazon RDS 数据库?
如何将文件从 S3 复制到 Amazon EMR HDFS?
如何将数据库从 Amazon RDS MySQL 实例导出到本地实例?