我目前有一个在本地运行的R代码。它由一个我已经使用%dopar%函数成功并行化的foreach部分组成。我希望将此循环从单个CPU上的并行化转换为Hadoop服务器上的分发。
有人可以建议我采用合适的方法以及应该使用哪些软件包?
附加信息:我的Hadoop设置是Hortonworks HDP,而我的foreach循环令人尴尬地是并行的。我希望从本地并行化过渡到集群分布以提高速度。仅需要在群集上完成计算/处理(我的数据是本地数据-不在群集上)。
最佳答案
没有一个旨在使用Hadoop的foreach后端。您可以使用doSNOW
,doParallel
和doMPI
在集群的多个节点上执行foreach,但是它们需要ssh或MPI / mpirun才能在远程节点上启动工作程序。我不确定Hadoop会如何发挥作用。
有许多可与Hadoop一起使用的R软件包(RHIPE
,RHadoop
),但是我不知道要转换R代码以使用它们需要进行多少工作。
关于r - 在Hadoop服务器上分配R处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43221625/