2011-11-17 6 views
8

Rのforeachパッケージのバックエンドを使用するためにamazon EC2マシンのクラスターを開始したいと思うのは理想的です。ローカルマシンのRで、関連するデータとコマンドをローカルRセッションからリモートクラスタに送信します。foreachバックエンドとして使用するためにAmazon EC2クラスターをスピンアップする最も簡単な方法

私はAWSパッケージがこの作業に役立つことは知っていますが、コマンドを実行した後の対処方法はわかりません。 Segueもそこに道を譲りますが、foreachのバックエンドではなく、カスタムAMIをサポートしていないようで、現在はウィンドウをサポートしていません。 deathstarパッケージもありますが、詳細は解説していません。

他に誰かがこの問題の解決策を思い付いていますか?

答えて

6

ザック、簡単な答えはここからそこまでの単純なパスが存在しないということです:)

私はセグエを書いたとき、私は誰かがすぐにセグエが時代遅れになるだろう何かで出てくることを期待しました。 Cloudnumbersそれはある日かもしれないが、おそらくまだない。私はSegueをforeachバックエンドにすることに夢中になっていますが、それを使用しないので、バックエンドを構築する方法を学ぶ時間がかかりませんでした。

私の意見では、非常に有望なことの1つは、doRedis()パッケージをAmazon EC2のワーカーと使用していることです。 doRedisは、ジョブコントローラとしてRedisサーバーを使用し、その後、ワーカーがRedisサーバーに接続し、ジョブと結果を取得/返すようにします。私はしばらくの間、EC2上にdoRedisクラスタをデプロイするための単純な方法があればいいと思っていました。しかし、誰もまだ私が知っているものは書いていません。

+0

doRedisは実際に私がこの質問を書いたときに思いついたことです。私は比較的シンプルなシナリオを描いています。起動時にRを起動し、n人のdoRedisワーカーを作成し、それらのワーカーが所有しているDNS上のredisキューに参加するカスタムの「ワーカー」AMIを作成します(dyndnsなど)。次に、DNSをローカルマシンにポイントするRスクリプトが必要です。キューを使用してdoRedisを起動し、ワーカーマシンを起動し、それらのマシンへの計算をいくつか実行し、それらのマシンをシャットダウンします。または、私はちょうど待つことができ、誰かがすぐに 'doEC2'を書いてくれることを願っています... – Zach

+1

うん、あなたが描いているのは、私が精神的に狂ったことです。私はまだそれを構築していません:) –

+0

私は私の質問に追加したdeathstarパッケージを見てください。それは赤字ではなくZMQを使用しますが、私たちが探しているものにかなり近いようです。 – Zach

0

bioconductrには、MPIクラスタをスピンアップするためのslick toolがあります。開始後は、マスターノードでmpi.spawn.Rslaves()mpi.parLapplyを実行して、計算をクラスタに出力することができます。しかし、私はそれをdoMPIと動作させる方法を理解できません。

関連する問題