Lien Spark avec iPython Notebook
J'ai suivi un tutoriel en ligne, mais ils ne fonctionnent pas avec Spark 1.5.1
sur OS X El Capitan (10.11)
Fondamentalement, je n'ai exécutez ces commandes télécharger apache-spark
brew update
brew install scala
brew install apache-spark
mis à jour le .bash_profile
# For a ipython notebook and pyspark integration
if which pyspark > /dev/null; then
export SPARK_HOME="/usr/local/Cellar/apache-spark/1.5.1/libexec/"
export PYSPARK_SUBMIT_ARGS="--master local[2]"
fi
exécuter
ipython profile create pyspark
créé un fichier de démarrage ~/.ipython/profile_pyspark/startup/00-pyspark-setup.py
configuré de cette manière
# Configure the necessary Spark environment
import os
import sys
# Spark home
spark_home = os.environ.get("SPARK_HOME")
# If Spark V1.4.x is detected, then add ' pyspark-shell' to
# the end of the 'PYSPARK_SUBMIT_ARGS' environment variable
spark_release_file = spark_home + "/RELEASE"
if os.path.exists(spark_release_file) and "Spark 1.4" in open(spark_release_file).read():
pyspark_submit_args = os.environ.get("PYSPARK_SUBMIT_ARGS", "")
if not "pyspark-shell" in pyspark_submit_args: pyspark_submit_args += " pyspark-shell"
os.environ["PYSPARK_SUBMIT_ARGS"] = pyspark_submit_args
# Add the spark python sub-directory to the path
sys.path.insert(0, spark_home + "/python")
# Add the py4j to the path.
# You may need to change the version number to match your install
sys.path.insert(0, os.path.join(spark_home, "python/lib/py4j-0.8.2.1-src.zip"))
# Initialize PySpark to predefine the SparkContext variable 'sc'
execfile(os.path.join(spark_home, "python/pyspark/shell.py"))
Je puis exécutez ipython notebook --profile=pyspark
et le portable fonctionne très bien, mais le sc
(étincelle contexte) n'est pas reconnue.
Quelqu'un a réussi à le faire avec Spark 1.5.1
?
EDIT: vous pouvez suivre ce guide pour avoir de travail
https://gist.github.com/tommycarpi/f5a67c66a8f2170e263c
source d'informationauteur r4id4
Vous devez vous connecter pour publier un commentaire.
J'ai Jupyter installé, et en effet Il est plus simple que vous le pensez:
Installer jupyter tapant la ligne suivante dans votre terminal Cliquez-moi pour plus d'info.
Mise à jour jupyter juste au cas où.
Télécharger Apache Spark et le compiler, ou télécharger et décompresser Apache Spark 1.5.1 + Hadoop 2.6.
Créer un
Apps
dossier sur votre maison (j'.e):Déplacer le dossier décompressé
spark-1.5.1
à la~/Apps
répertoire.Passer à la
~/Apps
répertoire et vérifiez que l'étincelle est là.Voici la première partie délicate. Ajouter l'étincelle binaires à votre
$PATH
:Voici la deuxième partie délicate. Ajouter cette variables d'environnement aussi:
Source le profil pour faire de ces variables disponibles pour cette terminal
Créer un
~/notebooks
répertoire.Déplacer à
~/notebooks
et exécuter pyspark:Notez que vous pouvez ajouter ces variables à la
.bashrc
situé dans votre maison.Maintenant être heureux, Vous devriez être en mesure d'exécuter jupyter avec un pyspark noyau (Il va le montrer comme un python 2, mais il utilisera étincelle)
Tout d'abord, assurez-vous que vous avez une étincelle de l'environnement dans votre machine.
Ensuite, installez un module python
findspark
via pip:Et puis dans le python shell:
Maintenant, vous pouvez faire ce que vous voulez avec pyspark dans le python shell(ou dans ipython).
En fait, c'est la façon la plus simple de mon point de vue de l'utilisation de l'étincelle du noyau dans le jupyter
Pour info, vous pouvez exécuter la Scala, PySpark, SparkR, et SQL avec Spark en cours d'exécution sur le dessus de Jupyter via https://github.com/ibm-et/spark-kernel maintenant. Les nouveaux interprètes ont été ajoutés (et marquée expérimental) à partir de pull request https://github.com/ibm-et/spark-kernel/pull/146.
Voir le support de la langue page wiki pour plus d'informations.
Étincelle avec IPython/Jupyter ordinateur portable est génial et je suis heureux Alberto a été en mesure de vous aider à le faire fonctionner.
De renvoi, il est aussi intéressant de voir 2 bonnes alternatives qui se présentent préemballés et peut facilement être intégré dans un FIL de cluster (si nécessaire).
Étincelle Portable: https://github.com/andypetrella/spark-notebook
Apache Zeppelin: https://zeppelin.incubator.apache.org/
Au moment de la rédaction de l'Étincelle pour ordinateur Portable (v0.6.1) est plus mature et vous pouvez pré-créer une installation à l'encontre de votre Étincelle et Hadoop version ici: http://spark-notebook.io/
Zeppelin (v0.5) a l'air très prometteur, mais n'offre pas autant de fonctionnalités que l'Étincelle ordinateur Portable ou IPython avec Spark droit maintenant.