10 Réponses :


3
votes

Cela semble être un problème de permission. Avez-vous accès au dossier racine /? Essayez les options suivantes-

1. Run command as superuser

OR

2.Create the warehouse in your home directory. 


1 commentaires

Oui, il s'avère être un simple problème d'autorisation, donc "sudo bin / hadoop fs -mkdir / utilisateur / ruche / entrepôt" a fait le tour. Merci!



0
votes

S'il s'agit d'un simple problème d'autorisation qui a été résolu avec sudo dans mon commentaire ci-dessus, il y a quelques notes:

  1. Créez-le dans le répertoire de domicile devrait également fonctionner, mais vous devrez peut-être mettre à jour le réglage de la ruche pour le chemin du métastore, que je pense que les valeurs par défaut / utilisateur / Hive / Warehouse

  2. J'ai rencontré une autre erreur d'instruction de table Create avec Hive Shell, l'erreur était quelque chose comme ceci:

    ruche> créer des pkues de table (foo int, chaîne de bar); A échoué: erreur dans MetaData: MetaException (Message: obtention d'une exception: java.io.filenotfoundexception Fichier de fichier: / User / Hive / Warehouse / Pokes n'existe pas.) Échec de: Erreur d'exécution, code de retour 1 de org.apache.hadoop.hive.hive.hive.ql.exec.ddltask

    Il se tourne comme un autre problème de permission, vous devez créer un groupe appelé "HIVE", puis ajouter l'utilisateur actuel à ce groupe et changer la propriété de / utilisateur / ruche / entrepôt à ce groupe. Après cela, ça marche. Les détails peuvent être trouvés à partir de ce lien ci-dessous:

    http : //mail-archives.apache.org/mod_mbox/hive-user/201104.mbox/%3cbanlktinq4xwjeawu6zgeyzpfdurqf+j8bw@mail.gmail.com%3e


0 commentaires

5
votes

Lorsque vous courez la ruche sur le système local, il suffit d'ajouter à ~ / .HIVERC: xxx

Vous pouvez spécifier n'importe quel dossier à utiliser comme entrepôt. Évidemment, tout autre Configuration de la ruche La méthode sera (Hive-Site.xml ou ruche -hiveconf, par exemple).

C'est peut-être ce que Ambarish Hazarnis a gardé à l'esprit en disant "ou crée l'entrepôt dans votre annuaire de domicile".


1 commentaires

Le mien a dû créer à l'intérieur de /usr/local/cellar/hive/2.3.1/libexec/conf sur MacOS (à l'aide de Homebrew comme gestionnaire de packages)



0
votes

Si vous exécutez la vérification de Linux (dans Hadoop Core-Site-Site.xml) Répertoire de données et autorisation, il semble que vous avez conservé la valeur par défaut / DATA / TMP et IM La plupart des cas qui prendront la permission de racines. Changez le fichier de configuration XML, Supprimer / Data / TMP et exécuter FS FS Format (OC après avoir modifié la configuration XML CORE)


0 commentaires

23
votes

Presque tous les exemples de la documentation ont cette commande erronée. Juste comme Unix, vous aurez besoin du drapeau "-P" pour créer également les annuaires parents, à moins que vous ne les ayez déjà créé. Cette commande fonctionnera.

$HADOOP_HOME/bin/hadoop fs -mkdir -p    /user/hive/warehouse


0 commentaires

0
votes

Je recommande d'utiliser des versions supérieures de Hive I.E. 1.1.0 Version, 0.10.0 est très buggy.


0 commentaires

0
votes
  • Exécutez cette commande et essayez de créer un répertoire qu'elle permettrait d'accorder une autorisation complète pour l'utilisateur dans le répertoire HDFS / utilisateur. hadoop fs -chmod -r 755 / utilisateur

0 commentaires

1
votes

Lors du réglage des propriétés Hadoop dans la configuration Spark, préfixez-les avec Spark.hadoop Code>.

Par conséquent, définissez P>

conf.set("spark.hadoop.hive.metastore.warehouse.dir","/new/location")


0 commentaires

1
votes

Ajout de réponse pour Ref to Des Cloudera CDH Utilisateurs qui voient ce même problème.

Si vous utilisez la distribution CLOUDERA CDH, assurez-vous d'avoir suivi ces étapes:

  • Lancé Cloudera Manager (Express / Enterprise) en cliquant sur l'icône de bureau.
  • Ouvrir la page Open Cloudera Manager dans le navigateur
  • Démarrez tous les services

    Cloudera a / dossier Utilisateur / Hive / Warehouse créé par défaut. C'est juste que le fil et les HDF ne soient peut-être pas opérationnels pour accéder à ce chemin.


0 commentaires

0
votes

J'utilise MacOS et Homebrew comme gestionnaire de paquets. Je devais définir la propriété dans Hive-Site.xml comme xxx


0 commentaires