2010-06-16 8 views
5

Ich bin ein Anfänger soweit ich Cloud Computing verwende, aber ich bekomme das Konzept und bin ziemlich gut darin Anweisungen zu befolgen. Ich würde gerne einige Simulationen meiner Daten machen und jeder Schritt dauert einige Minuten. Angesichts der Hierarchie in meinen Daten dauert es mehrere Stunden für jeden Satz. Ich möchte das beschleunigen, indem ich es auf Amazons EC2-Cloud laufen lasse.Hilf mir, Daten über die Amazon EC2 zu kopieren und ein Skript auszuführen

Nachdem ich this gelesen habe, kann ich ein AMI starten, über die Shell eine Verbindung herstellen und R an der Eingabeaufforderung starten.

Was ich helfen möchte, ist in der Lage, Daten (.rdata-Dateien) und ein Skript zu kopieren und nur an der R-Eingabeaufforderung Quelle. Sobald alle Ergebnisse in neue RTA-Dateien geschrieben wurden, möchte ich sie auf meinen lokalen Computer kopieren.

Wie mache ich das?

+0

Es gibt Dienste, die Ihnen das leicht machen. Siehe zB http://www.monkeyanalytics.com/ oder http://biocep-distrib.r-forge.r-project.org/ –

+0

MonkeyAnalytics sieht gut aus, aber leider scheinen sie nicht live zu sein (oder zumindest ihre Anmeldung ist nicht sofort). Ich schätze die Köpfe jedoch. – Maiasaura

Antwort

3

Ich weiß nicht viel über R, aber ich mache ähnliche Dinge mit anderen Sprachen. Was ich Ihnen vorschlage, würde Ihnen wahrscheinlich ein paar Ideen geben.

  1. Richten Sie einen FTP-Server auf Ihrem lokalen Computer ein.
  2. Erstellen Sie ein "Startup-Skript", das Sie mit Ihrer Instanz starten.
  3. Lassen Sie das Startskript die R-Dateien von Ihrem lokalen Rechner herunterladen, R initialisieren und die Berechnungen durchführen, dann laden Sie die neuen Dateien auf Ihren Rechner hoch.

Startskript:

#!/bin/bash 
set -e -x 
apt-get update && apt-get install curl + "any packages you need" 
wget ftp://yourlocalmachine:21/r_files > /mnt/data_old.R 
R CMD BATCH data_old.R -> /mnt/data_new.R 
/usr/bin/curl -T /mnt/data_new.r -u user:pass ftp://yourlocalmachine:21/new_r_files 

startet Instanz mit einem Startskript

ec2-run-instances --key KEYPAIR --user-data-file my_start_up_script ami-xxxxxx 
1

erstes id Verwendung Amazon S3 zum Speichern der Dateien
sowohl von Ihrem lokalen Rechner und zurück von der Instanz
Wie bereits erwähnt, können Sie Start-Skripte erstellen oder sogar Ihre eigenen angepassten AMI mit allen erforderlichen Einstellungen bündeln und Ihre Instanzen davon ausführen
also laden Sie die Dateien aus einem Bucket in S3, führen und verarbeiten, laden Sie die Ergebnisse schließlich in S3/
zurück in den gleichen/anderen Bucket unter der Annahme, die Daten sind klein (wie große Skripte sein können) als S3 Kosten/Benutzerfreundlichkeit wäre sehr effektiv