Chiunque ha ancora giocato con MapReduce su AWS? qualche idea? Come è l'implementazione?MapReduce su AWS
risposta
È facile iniziare.
Ecco una FAQ: http://aws.amazon.com/elasticmapreduce/faqs/
Ed ecco la Guida introduttiva: http://docs.amazonwebservices.com/ElasticMapReduce/latest/GettingStartedGuide/
Se hai già un account EC2, è possibile attivare MapReduce ed avere un'applicazione di esempio installato e funzionante in meno di 10 minuti utilizzando la Console di gestione AWS.
Ho eseguito l'applicazione di esempio Conteggio parole preconfigurata, che restituisce un conteggio di ciascuna parola contenuta in circa 20 MB di testo. È possibile eseguire il provisioning di un massimo di 20 istanze da eseguire contemporaneamente, anche se ho utilizzato solo 2 istanze e il processo è stato completato in circa 3 minuti.
Il lavoro restituisce un elenco di parole in ordine alfabetico di 300 KB e ogni quanto ogni parola appare nel campione corpus.
Mi piace molto che i lavori MapReduce possano essere scritti nella mia scelta di Perl, Python, Ruby, PHP, C++, R o Java. Il processo è stato indolore e diretto e l'interfaccia fornisce un buon feedback sullo stato delle istanze e sul flusso di lavoro.
Tenere presente che, poiché AWS carica per un'ora intera quando viene creata un'istanza e poiché le istanze MapReduce vengono terminate automaticamente alla fine del flusso di lavoro, il costo di più flussi di lavoro a esecuzione rapida può essere aumentato rapidamente .
Ad esempio, se creo un flusso di lavoro che utilizza 20 istanze e restituisce risultati in 15 minuti, quindi rieseguo il flusso di lavoro altre 3 volte, verrà addebitato 80 ore di tempo macchina anche se aveva solo 20 istanze in esecuzione per 1 ora.
Anche le nostre esperienze, oltre al tempo di avvio lento. Ne vale la pena se hai lavori che potrebbero durare per diverse ore. –
Il cluster non viene necessariamente chiuso automaticamente, è possibile lasciarlo in esecuzione. –
È molto conveniente perché non è necessario amministrare il proprio cluster. Devi solo pagare per l'uso quindi penso che sia una buona idea se hai un lavoro che deve essere eseguito una volta ogni tanto. Stiamo eseguendo Amazon MapReduce solo una volta al mese quindi, per il nostro utilizzo, ne vale la pena.
Tuttavia, per quanto posso dire, uno svantaggio di Amazon Map Reduce è che non si può sapere quale sistema operativo è in esecuzione o anche la sua versione. Questo mi ha causato problemi con codice C++ compilato con g ++ 4.44, alcune immagini del sistema operativo non supportano la libreria cUrl, ecc.
Se non hai bisogno di librerie speciali per il tuo caso d'uso, direi di andare .
Buona risposta di MB.
Per essere chiari: è possibile eseguire i cluster Hadoop in due modi: 1) Eseguirlo su istanze Amazon EC2. Ciò significa che devi installarlo, configurarlo, terminarlo, ecc. 2) Eseguirlo usando Elastic MapReduce, o EMR: questo è un modo automatico per eseguire un cluster Hadoop su Amazon Web Services. Paghi un piccolo extra in aggiunta al costo base per EC2, ma non devi gestire nulla: basta caricare i tuoi dati, quindi il tuo algoritmo, quindi crunch. EMR chiuderà automaticamente le istanze al termine dei lavori.
migliore,
Simone
si ha anche la possibilità di eseguire MapReduce (Hadoop) su AWS con StarCluster.Questo strumento configura il cluster per te e ha il vantaggio che non devi pagare l'extra Amazon Elastic MapReduce Price (se vuoi ridurre i costi) e potresti creare la tua immagine (AMI) con i tuoi strumenti (questo potrebbe essere buono se l'installazione degli strumenti non può essere eseguita da uno script di bootstrap).
EMR è il modo migliore per utilizzare le risorse disponibili con un costo aggiuntivo molto basso rispetto a EC2, tuttavia è possibile risparmiare tempo ed è facile. La maggior parte dell'implementazione MR su Cloud utilizza questo modello, ad esempio Apache Hadoop su Windows Azure, dati di mortaio, ecc. Ho lavorato sia su Amazon EMR che Apache Hadoop su Windows Azure e ho trovato incredibile l'utilizzo.
Inoltre, a seconda del tipo/durata dei lavori che si prevede di eseguire, è possibile utilizzare AWS spot instances with EMR to get better pricing.
sto lavorando con AWS EMR. È abbastanza pulito. Voglio dire una volta che avvii il loro cluster e accedi al loro nodo principale. Puoi giocare con la struttura delle directory hadoop. E fai cose davvero belle .. Se hai un account edu non dimenticarti di richiedere un assegno di ricerca. Danno a $ 100 crediti gratuiti per utilizzare la loro AWS.
AWS EMR è una buona scelta quando si utilizza l'archiviazione S3 per i dati. Fornisce integrazione immediata con S3 per il caricamento di file e la pubblicazione di file elaborati. In casi di utilizzo in cui è necessario eseguire il lavoro su richiesta, si è risparmiati dal costo di eseguire l'intero cluster tutto il tempo, questo aiuta davvero a risparmiare sulle ore di istanza. Sfruttando il vantaggio di cui sopra, si può usare AWS lambda per generare cluster di eventi guidati.
Come mai quando ho fatto domande come queste, muoiono in 4 secondi con "non una vera domanda" buls ** it – Letterman