Spark contexte " sc " non défini
Je suis nouveau à l'Étincelle et je suis en train d'installer le PySpark en se référant au site ci-dessous.
http://ramhiser.com/2015/02/01/configuring-ipython-notebook-support-for-pyspark/
J'ai essayé d'installer les deux prêts à l'emploi package et aussi par la construction de l'Étincelle paquet thru SBT.
Lorsque j'essaie d'exécuter un code python dans IPython Notebook-je obtenir l'erreur ci-dessous.
NameError Traceback (most recent call last)
<ipython-input-1-f7aa330f6984> in <module>()
1 # Check that Spark is working
----> 2 largeRange = sc.parallelize(xrange(100000))
3 reduceTest = largeRange.reduce(lambda a, b: a + b)
4 filterReduceTest = largeRange.filter(lambda x: x % 7 == 0).sum()
5
NameError: name 'sc' is not defined
Dans la fenêtre de commande, je vois l'erreur ci-dessous.
<strong>Failed to find Spark assembly JAR.</strong>
<strong>You need to build Spark before running this program.</strong>
Remarque que j'ai eu un scala invite quand j'ai exécuté spark-shell commande
Mise à jour:
Avec l'aide d'un ami que je suis en mesure de résoudre le problème lié à l'Étincelle de l'assemblée POT en modifiant le contenu de .ipython/profile_pyspark/startup/00-pyspark-setup.py fichier
J'ai maintenant que le problème de l'Allumage variable de Contexte. La modification du titre pour être correctement compte de mon problème actuel.
OriginalL'auteur Arvind | 2015-06-10
Vous devez vous connecter pour publier un commentaire.
Une solution est d'ajouter
pyspark-shell
à l'environnement du shell variable PYSPARK_SUBMIT_ARGS:Il y a un changement dans python/pyspark/java_gateway.py , ce qui nécessite PYSPARK_SUBMIT_ARGS comprend
pyspark-shell
si un PYSPARK_SUBMIT_ARGS variable est définie par un utilisateur.oui depuis la 1.4.x. Je tiens à ajouter des commentaires. En fait,
$SPARK_HOME/bin/pyspark
a un moyen officiel pour le lancement de ipython ou ipython notebook. Pour la 1.4.x,Vous pouvez lancer ipython ou ipython notebook à l'aide de $SPARK_HOME/bin/pyspark, vérifiez que les scripts bash. PYSPARK_DRIVER_PYTHON=ipython $SPARK_HOME/bin/pyspark PYSPARK_DRIVER_PYTHON=ipython PYSPARK_DRIVER_PYTHON_OPTS='notebook' $SPARK_HOME/bin/pyspark
L'ajout de pyspark-shell a fonctionné pour moi.
La solution ne fonctionne pas. L'étincelle de la version 2.0.0
OriginalL'auteur Zak.2Z
vous devez effectuer les opérations suivantes après avoir pyspark dans votre chemin:
Pas sûr de ce qui se passe là-bas, pouvez-vous me donner un peu plus de contexte
parfait, mais je pense que vous pouvez faire de votre code ressemble en ajoutant de l'ardents
OriginalL'auteur venuktan
Vous devez créer une instance de SparkContext comme suit:
d'importation:
et puis:
NB:
sc =SparkContext.getOrCreate()
fonctionne bien quesc =SparkContext()
.OriginalL'auteur HISI
Juste un peu d'amélioration. Ajoutez ce qui suit au haut de votre script python fichier.
OriginalL'auteur Shafiq
J'ai ajouté les lignes ci-dessous fourni par Venu.
Puis le ci-dessous ultérieure erreur a été résolu par la suppression de la variable d'Environnement PYSPARK_SUBMIT_ARGS.
OriginalL'auteur Arvind
J'ai aussi rencontré le
Java gateway process exited before sending the driver its port number
message d'erreur.J'ai pu résoudre ce problème en téléchargeant l'une des versions qui sont prêts à l'emploi pour Hadoop (j'ai utilisé l'un pour hadoop 2.4). Comme je n'ai pas utiliser Hadoop, je n'ai aucune idée de pourquoi cela a changé quelque chose, mais maintenant cela fonctionne parfaitement pour moi...
OriginalL'auteur harppu
J'obtenais une erreur similaire à essayer d'obtenir pySpark de travail via PyCharm, et j'ai remarqué dans le journal, juste avant que cette erreur je recevais ce message d'erreur:
env: pas trouvé
J'ai tracé le fait que je n'ai pas de Java variable d'environnement home.. j'ai donc ajouté
os.environ['JAVA_HOME'] = "/usr/java/jdk1.7.0_67-cloudera"
à mon script ( je suis conscient que ce n'est probablement pas le meilleur endroit pour ça)
et l'erreur se passe et je reçois mon étincelle objet créé
OriginalL'auteur JmcG
Cela a fonctionné pour moi dans l'étincelle de la version 2.3.1
OriginalL'auteur Dheeraj
Étincelle sur mon Mac est 1.6.0 ainsi, l'ajout de
pyspark-shell
ne résout pas le problème.Ce qui a fonctionné pour moi, c'est à la suite de la réponse donnée ici par @karenyng
OriginalL'auteur MKR
J'ai eu le même problème dans mon cas, le problème était un autre ordinateur portable a été en cours d'exécution (dans les versions récentes, elles sont affichées en vert). J'ai sélectionné et fermer l'un d'entre eux et il a bien fonctionné.
Désolé pour l'invocation de vieux thread mais il peut aider quelqu'un 🙂
OriginalL'auteur Ganesh Satpute
Ce script a fonctionné pour moi (sous linux):
Appeler
pyspark
que je vais appeler là, je suis en supposant que "spark/bin" chemin d'installation est dans lePATH
variable. Si pas, appelez au lieu/path/to/spark/bin/pyspark
.OriginalL'auteur Paco Barter