2017-06-22 7 views
1

J'essaie d'accéder à la table hbase mappée dans ruche en utilisant HiveContext dans Spark. Mais je reçois ClassNotFoundException Exceptions .. Ci-dessous est mon code.HiveContext - impossible d'accéder à la table hbase mappée dans la ruche en tant que table externe

import org.apache.spark.sql.hive.HiveContext 
val sqlContext = new HiveContext(sc) 
val df = sqlContext.sql("select * from dbn.hvehbasetable") 

Je reçois l'erreur ci-dessous ..

17/06/22 07:17:30 journal des erreurs: erreur dans initSerDe: java.lang.ClassNotFoundException classe org.apache. hadoop.hive.hbase.HBaseSerDe introuvable java.lang.ClassNotFoundException: Classe org.apache.hadoop.hive.hbase.HBaseSerDe introuvable sur org.apache.hadoop.conf.Configuration.getClassByName (Configuration.java:2120) sur org.apache.hadoop.hive.metastore.MetaStoreUtils.getDeserializer (Me taStoreUtils.java:385) à org.apache.hadoop.hive.ql.metadata.Table.getDeserializerFromMetaStore (Table.java:276) à org.apache.hadoop.hive.ql.metadata.Table.getDeserializer (Table. java: 258) à org.apache.hadoop.hive.ql.metadata.Table.getCols (Table.java:605) à org.apache.spark.sql.hive.client.ClientWrapper $$ anonfun $ getTableOption $ 1 $ $ anonfun $ 3.apply (ClientWrapper.scala: 342) à org.apache.spark.sql.hive.client.ClientWrapper $$ anonfun $ getTableOption $ 1 $ anonfun $ 3.apply (ClientWrapper.scala: 337) à scala. Option.map (Option.scala: 145) à org.apache.spark.sql.hive.client.ClientWrapper $$ anonfun $ getTableOption $ 1.apply (ClientWrapper.scala: 337) à org.apache.spark.sql. hive.client.ClientWrapper $$ anonfun $ getTableOption $ 1.apply (ClientWra pper.scala: 332) à org.apache.spark.sql.hive.client.ClientWrapper $$ anonfun $ avecHiveState $ 1.apply (ClientWrapper.scala: 290) à org.apache.spark.sql.hive.client. ClientWrapper.liftedTree1 $ 1 (ClientWrapper.scala: 237)

Quelqu'un peut-il aider quelle classe j'ai besoin d'importer pour lire les tables hbase.

Répondre

4

Je pense que vous devez ajouter hive-hbase-handler jar dans classpath/auxpath si vous ne l'avez pas déjà fait.

Obtenez votre version de here. Faites-moi savoir si cela aide.

À votre santé.

+0

Pouvez-vous expliquer quel classpath? Hbase classpath? –

+0

spark classpath –