hadoop - 在Hive中注册Hbase表

标签 hadoop hive hbase

我正在使用Hortonworks Sandbox 2.1。此版本包含Hbase和Hive。
为了将我的hbase表注册到 hive :我爱上了这个链接:
https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration

'CREATE TABLE IF NOT EXISTS Test_Hive (key int, valuer string) STORED BY ‘org.apache.hadoop.hive.hbase.HBaseStorageHandler’ WITH SERDEPROPERTIES (‘hbase.columns.mapping’ = ‘:key,cf1:val’) TBLPROPERTIES (‘hbase.table.name’ = ‘table_test’);'

但是我有这个错误:
'Execution Error, return code 1 from org.apache.hadoop.hive.q1.exec.DDLtask. org.apache.hadoop.hive.q1.metadata.HiveException : Error in Loading storage handler.org.apashe.hadoop.hive.hbase.HbaseStorageHandler'

我在此链接中找到了:
Integrating Hbase with Hive: Register Hbase table

我应该将Hbase和haddop的所有 jar 复制到 hive 中。然后像这样将hbase和hadoop conf复制到/ etc / Hive / conf /中:
'cp -n /usr/lib/hbase/lib/*.jar /usr/lib/hive/lib/ 
 cp -n /usr/lib/hadoop/lib/*.jar /usr/lib/hive/lib/
 cp -n /usr/lib/hbase/conf/* /usr/lib/hive/conf/
 cp -n /usr/lib/hadoop/conf/* /usr/lib/hive/conf/'

但它仍然无法正常工作!
然后我尝试了另一个包含的解决方案(也在上面的链接中找到):
“要么
也可以通过将HIVE_AUX_JARS_PATH环境变量指定到/etc/hive/conf/hive-env.sh中的/ usr / lib / hbase / lib /来将hbase jar复制到hive库中。 ”

所以我编辑了我的“/hive-env.sh”文件来更改HIVE_AUX_JARS_PATH,如下所示:
'export HIVE_AUX_JARS_PATH= /usr/lib/hbase/lib'

而且它仍然无法正常工作!
您能告诉我如何解决此问题吗?
先感谢您。

最佳答案

sudo cp /usr/lib/hive/lib/hive-common-0.7.0-cdh3u0.jar  /usr/lib/hadoop/lib/
sudo cp /usr/lib/hive/lib/hbase-0.90.1-cdh3u0.jar  /usr/lib/hadoop/lib/

2)使用以下逗号关闭HBASE和HADOOP
/usr/lib/hadoop/bin/stop-all.sh
/usr/lib/hbase/bin/stop-hbase.sh

3)使用COMMOND重新启动HBASE和HADOOP
 /usr/lib/hadoop/bin/start-all.sh
/usr/lib/hadoop/bin/start-hbase.sh

关于hadoop - 在Hive中注册Hbase表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27058359/

相关文章:

performance - 我应该在 HBase 中使用 prefixfilter 还是 rowkey 范围扫描

apache-spark - 神秘的 Spark/Hadoop BlockMissingException

hadoop - Cloudera主机安装失败:无法检测到Cloudera Manager Server

arrays - Hive:数组列上的聚合函数

linux - Hive 中的韩语数据加载

hadoop - 无法编辑 hbase-site.xml

hadoop - 在选择hbase之前应该考虑什么?

hadoop - Hive:将字符串转换为 bool 值

hadoop - 如何将文件放在目录名称中有空格的 hdfs 目录中?

mysql - 如何获得 hive 中时间戳的平均差异