我正在使用的版本,所有节点中的Hadoop 2.2.0和HBase 0.96.1.1,Hive 0.12.0
任何人都可以解释给我的这个错误吗?
hive> CREATE EXTERNAL TABLE
test(key string, values map<string, int>)
STORED BY
'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
WITH SERDEPROPERTIES (
"hbase.columns.mapping" = ":key,values:"
TBLPROPERTIES (
"hbase.table.name" = "test"
);
FAILED: Execution Error, return code 1 from
org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.IllegalArgumentException:
Not a host:port pair: PBUF
hadoop-master�����(
我从Hive制作的唯一配置是:
<name>mapred.job.tracker</name>
<value>local</value>
</property>
答案 0 :(得分:3)
这很可能是因为HBase服务器与Hive 0.12附带的HBase客户端jar之间的版本不匹配
要确认,请执行cd <hive_directory>/lib
和ls hbase*.jar
。 hive lib中的jar版本应与hbase服务器安装相匹配。
如果版本不同,您可以尝试将hbase jar从hbase安装复制到hive lib目录。
答案 1 :(得分:0)
它是一个版本问题 使用hadoop 2.2.0 + Hive 1.2.1 + HBASE 0.98.15 然后更新hive lib jar以获得hbase兼容性并解决问题。