2017-09-24 3 views
0

Ich habe Spark in Scala für eine lange Zeit verwendet. Jetzt benutze ich zum ersten Mal pyspark. Dies ist auf einem MacInstallieren von pyspark auf MacBook

  1. Zuerst habe ich installiert pyspark mit Conda pyspark installieren, und es installiert pyspark 2.2.0
  2. ich Funke selbst installiert Apache-Funken installieren mit brauen, und es scheint zu Apache-Funke installiert 2.2.0

aber wenn ich pyspark laufen, gibt sie heraus

/Users/me/anaconda/bin/pyspark: line 24: /Users/bruceho/spark-1.6/spark-1.6.2-bin-hadoop2.6/bin/load-spark-env.sh: No such file or directory 
/Users/me/anaconda/bin/pyspark: line 77: /Users/bruceho/spark-1.6/spark-1.6.2-bin-hadoop2.6/bin/spark-submit: No such file or directory 
/Users/me/anaconda/bin/pyspark: line 77: exec: /Users/bruceho/spark-1.6/spark-1.6.2-bin-hadoop2.6/bin/spark-submit: cannot execute: No such file 

Warum ist es auf die 1.6.2-Installation zeigen, die nicht mehr da zu sein scheint? Brew Suche Apache-Funke zeigt das Vorhandensein von beiden 1,5. und 1.6. Sollte pyspark 2.2.0 nicht automatisch auf die Installation von apache-spark 2.2.0 verweisen?

+0

Haben Sie gründen 'SPARK_HOME',' PYSPARK_PYTHON', ' PYSPARK_DRIVER_PYTHON' in '.bash_profile'? – titipata

+0

Ich habe ein altes SPARK_HOME in .bash_profile gefunden. Diese Parameter müssen bei der Verwendung von Apache-Spark nicht definiert werden. – bhomass

+0

Wahrscheinlich nur, um es zu entfernen, denke ich? – titipata

Antwort

1

Es gibt eine Reihe von Problemen mit Ihrer Frage:

mit zu beginnen, ist PySpark nicht ein Add-on-Paket, sondern ein wesentlicher Bestandteil des Funken selbst; Mit anderen Worten, bei der Installation von Spark erhalten Sie standardmäßig auch PySpark (Sie können es nicht vermeiden, auch wenn Sie möchten). Also, Schritt 2 sollte genug sein (und schon vorher sollte PySpark auf Ihrem Rechner verfügbar sein, da Sie Spark bereits benutzt haben).

Schritt 1 ist nicht notwendig: Pyspark von PyPi (d. H. Installiert mit pip oder conda) enthält nicht die vollständige Pyspark-Funktionalität; Es ist nur für die Verwendung mit einer Spark-Installation in einem bereits vorhandenen Cluster vorgesehen. Von den docs:

The Python packaging for Spark is not intended to replace all of the other use cases. This Python packaged version of Spark is suitable for interacting with an existing cluster (be it Spark standalone, YARN, or Mesos) - but does not contain the tools required to setup your own standalone Spark cluster. You can download the full version of Spark from the Apache Spark downloads page.

NOTE: If you are using this with a Spark standalone cluster you must ensure that the version (including minor version) matches or you may experience odd errors

Basierend auf der Tatsache, dass, wie Sie sagen, Sie haben bereits Funken gewesen mit (via Scala), scheint das Problem eher zum Upgrade zu sein. Wenn Sie jetzt vorgefertigte Spark-Distributionen verwenden, müssen Sie eigentlich nichts installieren - Sie müssen lediglich die relevanten Umgebungsvariablen herunterladen und dekomprimieren (SPARK_HOME usw.) - siehe meine Antwort auf "upgrading" Spark, die eigentlich auch zum ersten Mal anwendbar ist "Installationen".

+0

Ich denke, ich habe es nicht klar gemacht. Nach dem Entfernen alter SPARK_HOME-Deklarationen in .bash_profile wird alles ausgeführt. Ich habe mehrere Dokumentationen zur Installation von Spark gesehen. Homebrew zu verwenden, ist bei weitem das einfachste, was ich verwendet habe. Ich kenne bereits die Notwendigkeit einer Funkeninstallation auf dem Pyspark. Wie ich schon sagte, habe ich den letzten Funken mit brauen installiert. – bhomass

+0

In der Tat haben Sie nicht, aber trotzdem, hoffentlich haben Sie etwas Neues gelernt (d. H., Dass Schritt 1 unnötig ist) – desertnaut

+0

Ich glaube, Sie können Schritt 1 überspringen, wenn Sie nur Funken-Submit verwenden.Oft möchten Sie den Spark-Code jedoch nur lokal mithilfe von Python ausführen. In diesem Fall möchten Sie, dass pyspark für den Import verfügbar ist. – bhomass

Verwandte Themen