Domanda

Mi chiedo come altri sviluppatori stanno creando i propri ambienti locali per lavorare su progetti Spark. Si configura un cluster 'locale' utilizzando uno strumento come Vagrant? Oppure, è più comune per SSH in un ambiente cloud, come ad esempio un cluster su AWS? Forse ci sono molte attività in cui un cluster a nodo singolo è adeguata, e può essere eseguito localmente più facilmente.

È stato utile?

Soluzione

Spark è destinato a essere puntato verso grandi insiemi di dati distribuite, in modo come lei suggerisce, i casi più tipici di utilizzo comporterà la connessione a una sorta di sistema Cloud come AWS.

In realtà, se il set di dati si mira ad analizzare può andare bene sul sistema locale, di solito trovi che è possibile analizzare altrettanto semplicemente utilizzando python puro. Se stai cercando di sfruttare una serie di VM locali, si sta andando a esaurire la memoria abbastanza rapidamente e l'occupazione sarà o fallire o fermerebbe.

Detto, un'istanza locale di scintilla è molto utile ai fini dello sviluppo.

Un modo che ho trovato che funziona è se ho una directory in HDFS con molti file, tirerò su un singolo file, sviluppare a livello locale, quindi porto il mio script scintilla al mio sistema cloud per l'esecuzione. Se si sta utilizzando AWS, questo è davvero utile per evitare grandi tasse, mentre si sta sviluppando.

Altri suggerimenti

Personalmente, non utilizzare vagabonda con un provisioning locale. Ho installato un cluster Spark localmente senza HDFS che mi permette di sperimentare e sviluppare facilmente senza l'sopraffare di una macchina virtuale.

HDFS non è un requisito per i cluster locali, ed è anche una sorta di incubo amministrazione del sistema se avete solo bisogno per il test locale.

Spark funziona molto bene con i file system locali che si dovrà anche alla porta quando implementare sul tuo Cloud naturalmente.

Tuttavia, è possibile utilizzare vagabondo con AWS provisioning per creare un cluster per il test più pesante.

Nota: AWS funziona con S3 e non HDFS. Versione HDFS di AWS è effimero e se si mette giù il cluster, perderai tutti i tuoi calcoli. Per la persistenza, avrete bisogno di scrivere di nuovo a S3.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top