web-dev-qa-db-fra.com

Erreurs de démarrage de Spark-Shell

Je constate des erreurs lors du démarrage de spark-Shell, à l'aide de spark-1.6.0-bin-hadoop2.6. C'est un nouveau comportement qui vient de naître.

Le résultat des échecs affichés dans les messages de journal ci-dessous est que sqlContext n'est pas disponible (mais que sc est).

Existe-t-il une sorte de verrou Derby qui pourrait être libéré? Another instance of Derby may have already booted the database /root/spark-1.6.0-bin-hadoop2.6/bin/metastore_db.

<console>:16: error: not found: value sqlContext
         import sqlContext.implicits._
                ^
<console>:16: error: not found: value sqlContext
         import sqlContext.sql

16/05/25 11:00:00 ERROR Schema: Failed initialising database.
Failed to start database 'metastore_db' with class loader org.Apache.spark.sql.Hive.client.IsolatedClientLoader$$anon$1@c2191a8, see the next exception for details.
org.datanucleus.exceptions.NucleusDataStoreException: Failed to start database 'metastore_db' with class loader org.Apache.spark.sql.Hive.client.IsolatedClientLoader$$anon$1@c2191a8, see the next exception for details.


16/05/25 11:06:02 WARN Hive: Failed to access metastore. This class should not accessed in runtime.
org.Apache.hadoop.Hive.ql.metadata.HiveException: Java.lang.RuntimeException: Unable to instantiate org.Apache.hadoop.Hive.ql.metadata.SessionHiveMetaStoreClient


16/05/25 11:06:02 ERROR Schema: Failed initialising database.
Failed to start database 'metastore_db' with class loader org.Apache.spark.sql.Hive.client.IsolatedClientLoader$$anon$1@372e972d, see the next exception for details.
org.datanucleus.exceptions.NucleusDataStoreException: Failed to start database 'metastore_db' with class loader org.Apache.spark.sql.Hive.client.IsolatedClientLoader$$anon$1@372e972d, see the next exception for details.

Caused by: Java.sql.SQLException: Failed to start database 'metastore_db' with class loader org.Apache.spark.sql.Hive.client.IsolatedClientLoader$$anon$1@c2191a8, see the next exception for details.
        at org.Apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
        at org.Apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
        ... 134 more
Caused by: Java.sql.SQLException: Another instance of Derby may have already booted the database /root/spark-1.6.0-bin-hadoop2.6/bin/metastore_db.
        at org.Apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(Unknown Source)
        at org.Apache.derby.impl.jdbc.SQLExceptionFactory40.wrapArgsForTransportAcrossDRDA(Unknown Source)
        at org.Apache.derby.impl.jdbc.SQLExceptionFactory40.getSQLException(Unknown Source)
        at org.Apache.derby.impl.jdbc.Util.generateCsSQLException(Unknown Source)
        ... 131 more
Caused by: ERROR XSDB6: Another instance of Derby may have already booted the database /root/spark-1.6.0-bin-hadoop2.6/bin/metastore_db.
14
slachterman

J'ai eu un problème similaire dans un shell Spark 2.0.0 lorsque vous essayez de créer un DataFrame, supprimez simplement metastore_db/dbex.lck et le problème est résolu.

29
bachr

semblable à la réponse d'Andy. J'ai eu le même problème dans Windows, et voici la solution:

  1. Exécuter cmd sur Windows en tant qu'administrateur 
  2. naviguez vers le répertoire d'accueil 
  3. étincelle ouverte

    c:\park\bin> spark-shell

2
Wael Almadhoun

Le meilleur moyen de résoudre le problème consiste à redémarrer votre système, puis à accéder au répertoire principal spark et à partir de là, à lancer spark-Shell avec l'utilisateur Sudo.

Sudo bin/spark-Shell

ou si vous voulez utiliser l'instance de pyspark, le type

Sudo bin/pyspark

le problème se pose principalement en raison de privilèges insuffisants pour mertstore_db. 

1
andy

Ce problème se produit à cause de Metastore_db, il est créé lorsque l’étincelle Shell recherche une base de données et commence à l’enregistrer. Vous pouvez supprimer complètement métastore_db car chaque fois qu’il sera créé.Si vous ne pouvez pas supprimer. delete metastore_db/dbex.lck, vous pouvez alors supprimer le dossier metastore_db.J'ai utilisé spark2.1.10 et ai rencontré le même problème plus tôt .  enter image description here

1
Sheel

Dans mon cas, Hive a également été lancé avec Spark. J'ai donc fermé le serveur Hive et redémarré Spark Shell pour le faire fonctionner.

0
RushHour