HiveContext - 无法访问 hbase table 在 hive 中映射为外部 table

HiveContext - unable to access hbase table mapped in hive as external table

我正在尝试使用 Spark 中的 HiveContext 访问映射到配置单元中的 hbase table。但是我收到 ClassNotFoundException 异常。下面是我的代码。

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

我收到以下错误..

17/06/22 07:17:30 ERROR log: error in initSerDe: java.lang.ClassNotFoundException Class org.apache.hadoop.hive.hbase.HBaseSerDe not found java.lang.ClassNotFoundException: Class org.apache.hadoop.hive.hbase.HBaseSerDe not found at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:2120) at org.apache.hadoop.hive.metastore.MetaStoreUtils.getDeserializer(MetaStoreUtils.java:385) at org.apache.hadoop.hive.ql.metadata.Table.getDeserializerFromMetaStore(Table.java:276) at org.apache.hadoop.hive.ql.metadata.Table.getDeserializer(Table.java:258) at org.apache.hadoop.hive.ql.metadata.Table.getCols(Table.java:605) at org.apache.spark.sql.hive.client.ClientWrapper$$anonfun$getTableOption$$anonfun.apply(ClientWrapper.scala:342) at org.apache.spark.sql.hive.client.ClientWrapper$$anonfun$getTableOption$$anonfun.apply(ClientWrapper.scala:337) at scala.Option.map(Option.scala:145) at org.apache.spark.sql.hive.client.ClientWrapper$$anonfun$getTableOption.apply(ClientWrapper.scala:337) at org.apache.spark.sql.hive.client.ClientWrapper$$anonfun$getTableOption.apply(ClientWrapper.scala:332) at org.apache.spark.sql.hive.client.ClientWrapper$$anonfun$withHiveState.apply(ClientWrapper.scala:290) at org.apache.spark.sql.hive.client.ClientWrapper.liftedTree1(ClientWrapper.scala:237)

任何人都可以帮助 class 我需要导入以读取 hbase tables。

我认为,如果您还没有在类路径/辅助路径中添加 hive-hbase-handler jar,则需要这样做。

here 获取您的版本。

如果有帮助请告诉我。干杯。