Apache Spark

Installation d'Apache Spark sur Ubuntu 17.dix

Installation d'Apache Spark sur Ubuntu 17.dix

Apache Spark est un outil d'analyse de données qui peut être utilisé pour traiter les données de HDFS, S3 ou d'autres sources de données en mémoire. Dans cet article, nous allons installer Apache Spark sur un Ubuntu 17.10 machines.

Version Ubuntu

Pour ce guide, nous utiliserons Ubuntu version 17.10 (GNU/Linux 4.13.0-38-générique x86_64).

Apache Spark fait partie de l'écosystème Hadoop pour le Big Data. Essayez d'installer Apache Hadoop et créez un exemple d'application avec.

Mise à jour des packages existants

Pour démarrer l'installation de Spark, il est nécessaire que nous mettions à jour notre machine avec les derniers packages logiciels disponibles. Nous pouvons le faire avec :

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

Comme Spark est basé sur Java, nous devons l'installer sur notre machine. Nous pouvons utiliser n'importe quelle version de Java au-dessus de Java 6. Ici, nous utiliserons Java 8 :

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

Téléchargement de fichiers Spark

Tous les packages nécessaires existent désormais sur notre machine. Nous sommes prêts à télécharger les fichiers Spark TAR requis afin que nous puissions commencer à les configurer et exécuter également un exemple de programme avec Spark.

Dans ce guide, nous allons installer Étincelle v2.3.0 disponible ici:

Page de téléchargement de Spark

Téléchargez les fichiers correspondants avec cette commande :

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

Selon la vitesse du réseau, cela peut prendre jusqu'à quelques minutes car le fichier est volumineux :

Téléchargement d'Apache Spark

Maintenant que nous avons téléchargé le fichier TAR, nous pouvons l'extraire dans le répertoire courant :

goudron xvzf spark-2.3.0-bin-hadoop2.7.tgz

Cela prendra quelques secondes en raison de la grande taille du fichier de l'archive :

Fichiers non archivés dans Spark

Lorsqu'il s'agit de mettre à niveau Apache Spark à l'avenir, cela peut créer des problèmes en raison des mises à jour de Path. Ces problèmes peuvent être évités en créant un lien logiciel vers Spark. Exécutez cette commande pour créer un lien logiciel :

ln -s étincelle-2.3.0-bin-hadoop2.7 étincelles

Ajouter Spark au chemin

Pour exécuter des scripts Spark, nous allons l'ajouter au chemin maintenant. Pour ce faire, ouvrez le fichier bashrc :

vi ~/.bashrc

Ajoutez ces lignes à la fin du .bashrc afin que ce chemin puisse contenir le chemin du fichier exécutable Spark :

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

Maintenant, le fichier ressemble à :

Ajout de Spark à PATH

Pour activer ces modifications, exécutez la commande suivante pour le fichier bashrc :

source ~/.bashrc

Lancement de Spark Shell

Maintenant, lorsque nous sommes juste en dehors du répertoire spark, exécutez la commande suivante pour ouvrir le shell apark :

./spark/bin/spark-shell

Nous verrons que le shell Spark est maintenant openend :

Lancement du shell Spark

On peut voir dans la console que Spark a également ouvert une Web Console sur le port 404. Faisons-lui une visite :

Console Web Apache Spark

Bien que nous opérons sur la console elle-même, l'environnement Web est un endroit important à considérer lorsque vous exécutez des Jobs Spark lourds afin que vous sachiez ce qui se passe dans chaque Job Spark que vous exécutez.

Vérifiez la version du shell Spark avec une simple commande :

sc.version

Nous allons récupérer quelque chose comme :

res0 : chaîne = 2.3.0

Créer un exemple d'application Spark avec Scala

Maintenant, nous allons créer un exemple d'application Word Counter avec Apache Spark. Pour ce faire, chargez d'abord un fichier texte dans Spark Context sur le shell Spark :

scala> var Données = sc.textFile("/root/LinuxHint/spark/README.Maryland")
Données : organisation.apache.étincelle.rdd.RDD[Chaîne] = /root/LinuxHint/spark/README.md MapPartitionsRDD[1] à textFile à :24
échelle>

Désormais, le texte présent dans le fichier doit être découpé en tokens que Spark peut gérer :

scala> var jetons = données.flatMap(s => s.diviser(" "))
jetons : org.apache.étincelle.rdd.RDD[String] = MapPartitionsRDD[2] à flatMap à :25
échelle>

Maintenant, initialisez le compte pour chaque mot à 1 :

scala> var jetons_1 = jetons.carte(s => (s,1))
jetons_1 : org.apache.étincelle.rdd.RDD[(String, Int)] = MapPartitionsRDD[3] sur la carte à :25
échelle>

Enfin, calculez la fréquence de chaque mot du fichier :

var sum_each = jetons_1.réduireParClé((a, b) => a + b)

Il est temps de regarder la sortie du programme. Récupérez les jetons et leurs décomptes respectifs :

scala> sum_each.collecter()
res1: Array[(String, Int)] = Array((package,1), (For,3), (Programs,1), (traitement.,1), (Parce que,1), (Le,1), (page](http://spark.apache.organisation/documentation.html).,1), (groupe.,1), (its,1), ([run,1), (than,1), (APIs,1), (have,1), (Try,1), (calcul,1), (through,1 ), (plusieurs,1), (This,2), (graph,1), (Hive,2), (stockage,1), (["Spécifier,1), (À,2), ("fil" ,1), (Une fois,1), (["Utile,1), (préférer,1), (SparkPi,2), (moteur,1), (version,1), (fichier,1), (documentation ,,1), (traitement,,1), (les,24), (sont,1), (systèmes.,1), (params,1), (not,1), (different,1), (refer,2), (Interactive,2), (R,,1), (donné.,1), (if,4), (build,4), (quand,1), (be,2), (Tests,1), (Apache,1), (thread,1), (programs,,1 ), (y compris, 4), (./bin/run-example,2), (Spark.,1), (paquet.,1), (1000).count(),1), (Versions,1), (HDFS,1), (D…
échelle>

Excellent! Nous avons pu exécuter un exemple simple de compteur de mots en utilisant le langage de programmation Scala avec un fichier texte déjà présent dans le système.

Conclusion

Dans cette leçon, nous avons vu comment installer et commencer à utiliser Apache Spark sur Ubuntu 17.10 et exécutez également un exemple d'application dessus.

Lisez plus de messages basés sur Ubuntu ici.

Meilleurs jeux de laboratoire d'applications Oculus
Si vous êtes propriétaire d'un casque Oculus, vous devez être au courant du chargement latéral. Le chargement latéral est le processus d'installation ...
Top 10 des jeux à jouer sur Ubuntu
La plate-forme Windows a été l'une des plates-formes dominantes pour les jeux en raison du pourcentage énorme de jeux qui se développent aujourd'hui p...
5 meilleurs jeux d'arcade pour Linux
De nos jours, les ordinateurs sont des machines sérieuses utilisées pour les jeux. Si vous ne pouvez pas obtenir le nouveau score élevé, vous saurez c...