J'utilise Spark 2.1.0.
Lorsque je lance spark-Shell
, je rencontre cette erreur:
<console>:14: error: not found: value spark
import spark.implicits._
^
<console>:14: error: not found: value spark
import spark.sql
^
Quelle pourrait être la raison? Comment le réparer?
Je faisais face au même problème. Après enquête, j’ai constaté un problème de compatibilité entre version spark et winutils.exe de hadoop-2.xx.
Après l'expérience, je vous suggère d'utiliser la version hadoop-2.7.1 winutils.exe avec la version spark-2.2.0-bin-hadoop2.7 et la version hadoop-2.6.0 winutils.exe avec spark-1.6.0-bin-hadoop2.6 version et définition des variables d'environnement ci-dessous
SCALA_HOME : C:\Program Files (x86)\scala2.11.7;
Java_HOME : C:\Program Files\Java\jdk1.8.0_51
HADOOP_HOME : C:\Hadoop\winutils-master\hadoop-2.7.1
SPARK_HOME : C:\Hadoop\spark-2.2.0-bin-hadoop2.7
PATH : %Java_HOME%\bin;%SCALA_HOME%\bin;%HADOOP_HOME%\bin;%SPARK_HOME%\bin;
Créez le répertoire C:\tmp\Hive et donnez les droits d'accès à l'aide de la commande ci-dessous
C:\Hadoop\winutils-master\hadoop-2.7.1\bin>winutils.exe chmod -R 777 C:\tmp\Hive
Supprimez le répertoire local du métastore metastore_db basé sur Derby de l'ordinateur s'il existe.
C:\Users\<User_Name>\metastore_db
Utilisez la commande ci-dessous pour démarrer spark Shell
C:>spark-Shell
Cette erreur s’explique par le fait que l’instance n’a pas pu être créée en raison de certains problèmes antérieurs (dont peut s’être produit parce que vous êtes sous Windows et que vous n’avez pas installé le binaire winutils.exe
ou une autre session conserve la mémoire locale. Métastore basé sur Derby).
Il est recommandé de faire défiler l'écran vers le haut et d'examiner l'intégralité de l'écran des journaux où vous trouvez la cause première.
Si vous êtes sur Cloudera, la solution de ce ticket github a fonctionné pour moi ( https://github.com/cloudera/clusterdock/issues/30 ):
L'utilisateur root (sous lequel vous vous exécutez lorsque vous démarrez spark-Shell) ne possède pas de répertoire d'utilisateurs dans HDFS. Si vous en créez un (Sudo -u hdfs hdfs dfs -mkdir/user/root suivi de Sudo -u hdfs dfs -chown root: root/user/root), il convient de résoudre ce problème.
C'est à dire. créer un répertoire de base utilisateur HDFS pour l'utilisateur exécutant spark-Shell.
Si vous utilisez Cloudera, veuillez vous enregistrer dans Cloudera Manager et vous assurer que les services Hive sont activés. J'ai eu le même problème et je me suis dit que mon service Hive était en panne. (Serveur Hive METASTORE, HIVESERVER, HOSTS)
pour Spark, vous devez vous assurer que HDFS, YARN et Hive sont activés.
L'erreur ci-dessus apparaît si Hive est désactivé.
donnez "chmod 777" fondamentalement la permission pour ce dossier de créer un accès
C:\tmp\Hive
Voici la commande complète ci-dessous: -
C:\spark\Hadoop\bin\winutils.exe chmod 777 C:\tmp\Hive
http://mytechnologythought.blogspot.com/2017/10/fixed-spark-setup-error-not-found-spark.html
Pour les utilisateurs Ubuntu
J'ai eu exactement la même erreur et je l'ai corrigé de la manière suivante.
Si vous utilisez spark-Shell à partir du terminal, fermez et rouvrez le terminal, puisredémarrez spark-Shell.