我正在使用Hortonworks Sandbox 2.1。此版本包含Hbase和Hive。 为了我的HBase的表注册到蜂巢:我休耕此链接: https://cwiki.apache.org/confluence/display/Hive/HBaseIntegration在Hive中注册Hbase表
'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的jar,并且配置成配置单元。和copie的hbase和hadoop配置到/ 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环境变量复制hbase jar到hive库/ usr/lib/hbase/lib/in/etc /hive/conf/hive-env.sh也会做“
所以我编辑我的‘/hive-env.sh’文件来改变这样的HIVE_AUX_JARS_PATH:
'export HIVE_AUX_JARS_PATH= /usr/lib/hbase/lib'
它还是行不通 !! 你能告诉我如何解决这个问题吗? 预先感谢您。
谢谢您的回答。但是你已经写了两次相同的命令“sudo cp /usr/lib/hive/lib/hbase-0.90.1-cdh3u0.jar/usr/lib/hadoop/lib /”。这是正常的吗? – 2014-11-21 13:32:55
谢谢你的工作:) – 2014-11-21 14:11:17