Installazione di Apache Spark su Ubuntu 17.10

Apache Spark è uno strumento di analisi dei dati che può essere utilizzato per elaborare i dati da HDFS, S3 o altre fonti di dati in memoria. In questo post, installeremo Apache Spark su una macchina Ubuntu 17.10.

Ubuntu Versione

Ubuntu Versione

Per questa guida, useremo Ubuntu versione 17.10 (GNU/Linux 4.13.0-38-x86_64 generico).

Apache Spark fa parte dell’ecosistema Hadoop per i Big Data. Prova a installare Apache Hadoop e crea un’applicazione di esempio con esso.

Aggiornamento dei pacchetti esistenti

Per avviare l’installazione di Spark, è necessario aggiornare la macchina con gli ultimi pacchetti software disponibili. Possiamo farlo con:

sudo apt-get update &&sudo apt-get-y dist-upgrade

Poiché Spark è basato su Java, dobbiamo installarlo sulla nostra macchina. Possiamo usare qualsiasi versione Java sopra Java 6. Qui, useremo Java 8:

sudo apt-get-y installa openjdk-8-jdk-headless

Scarica i file Spark

Tutti i pacchetti necessari ora esistono sulla nostra macchina. Siamo pronti a scaricare i file TAR Spark richiesti in modo da poter iniziare a configurarli ed eseguire un programma di esempio con Spark pure.

In questa guida, installeremo Spark v2.3.0 disponibile qui:

Pagina di download di Spark

Pagina di download di Spark

Scarica i file corrispondenti con questo comando:

wget http://www-us.apache.org/dist/spark/spark-2.3.0/spark-2.3.0-bin-hadoop2.7.tgz

a Seconda della velocità della rete, questo può richiedere fino a un paio di minuti, il file è di grandi dimensioni:

il Download di Apache Scintilla

Scaricare Apache Scintilla

Ora che abbiamo il file TAR scaricato, è possibile estrarre nella directory corrente:

tar xvzf scintilla-2.3.0-bin-hadoop2.7.tgz

Questo richiederà alcuni secondi per essere completato a causa delle grandi dimensioni del file dell’archivio:

File non archiviati in Spark

File non archiviati in Spark

Quando si tratta di aggiornare Apache Spark in futuro, può creare problemi a causa degli aggiornamenti del percorso. Questi problemi possono essere evitati creando un softlink a Spark. Eseguire questo comando per creare un softlink:

ln-s spark-2.3.0-bin-hadoop2.7 spark

Aggiunta di Spark al percorso

Per eseguire script Spark, lo aggiungeremo al percorso ora. Per fare ciò, apri il file bashrc:

vi ~/.bashrc

Aggiungere queste righe alla fine del .bashrc in modo che il percorso può contenere la Scintilla percorso del file eseguibile:

SPARK_HOME=/LinuxHint/spark
export PATH=$SPARK_HOME/bin:$PATH

Ora, il file sembra:

Aggiungere Scintilla per PERCORSO

Aggiungere Scintilla per PERCORSO

Per attivare questi cambiamenti, eseguire il comando seguente per bashrc:

source ~/.bashrc

Avvio Spark Shell

Ora, quando siamo proprio al di fuori della directory spark, eseguire il seguente comando per aprire apark shell:

./ spark / bin / spark-shell

Vedremo che Spark shell è openend ora:

Avvio Spark shell

Avvio Spark shell

Possiamo vedere nella console che Spark ha anche aperto una console Web sulla porta 404. Facciamogli una visita:

Apache Spark Web Console

Apache Spark Web Console

Sebbene opereremo sulla console stessa, l’ambiente Web è un posto importante da guardare quando si eseguono lavori Spark pesanti in modo da sapere cosa sta succedendo in ogni lavoro Spark eseguito.

Controlla la versione Spark shell con un semplice comando:

sc.versione

Ci sarà tornare qualcosa di simile:

res0: Stringa = 2.3.0

Creazione di un’applicazione Spark di esempio con Scala

Ora, creeremo un’applicazione di esempio Word Counter con Apache Spark. Per fare ciò, prima carica un file di testo nel contesto Spark sulla shell Spark:

scala> var Data = sc. textFile (“/root/LinuxHint/spark/README.md”)
Data: org.Apache.scintilla.rdd.RDD = / root / LinuxHint/spark / README.md MapPartitionsRDD at textFile at :24
scala>

Ora, il testo presente nel file deve essere suddiviso in token che Spark può gestire:

scala > token var = Dati.flatMap (s = > s.split (” “))
token: org.Apache.scintilla.rdd.RDD = MapPartitionsRDD a flatMap a: 25
scala>

Ora, inizializzare il conteggio per ogni parola a 1:

scala> var tokens_1 = gettoni.mappa (s = > (s, 1))
tokens_1: org.Apache.scintilla.rdd.RDD = MapPartitionsRDD alla mappa a: 25
scala>

Infine, calcolare la frequenza di ogni parola del file:

var sum_each = tokens_1.reduceByKey((a, b) => a + b)

È ora di guardare l’output per il programma. Raccogli i token e i rispettivi conteggi:

scala> sum_each.collect ()
res1: Array = Array((pacchetto,1), (Per,3), (Programmi,1), (elaborazione.,1), (Perché, 1), (Il, 1), (pagina] (http://spark.apache.org/documentation.html)., 1), (cluster.,1), (la sua,1), ([esegui,1), (rispetto a,1), (Api,1), (hanno,1), (Provare,1), (calcolo,1), (attraverso,1), (parecchi,1), (Questo,2), (grafico 1), (Hive,2), (stoccaggio,1), ([“Specificando,1), (A,2), (“filato”,1), (una Volta,1), ([“Utile,1), (preferisco,1), (SparkPi,2), (motore,1), (versione 1), (file,1), (documentazione,1), (elaborazione,1), (i,24), (sono,1), (sistemi.,1), (params,1), (non,1), (diverso,1), (riferimento,2), (Interattivo,2), (R,,1), (dato.,1), (se, 4), (build, 4), (quando, 1), (be, 2), (Test, 1), (Apache, 1), (thread, 1), (programmi,, 1), (incluso, 4), (./ bin / run-esempio, 2), (Spark., 1), (pacchetto.,1), (1000).count (), 1), (Versioni, 1), (HDFS, 1), (D…
scala>

Eccellente! Siamo stati in grado di eseguire un semplice esempio di Word Counter utilizzando il linguaggio di programmazione Scala con un file di testo già presente nel sistema.

Conclusione

In questa lezione, abbiamo esaminato come possiamo installare e iniziare a utilizzare Apache Spark su Ubuntu 17.10 macchina ed eseguire un’applicazione di esempio su di esso pure.

Leggi altri post basati su Ubuntu qui.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.