【发布时间】:2015-07-19 13:04:17
【问题描述】:
我正在使用 hive 版本 1.1.0、Hbase 版本 1.0.1 和 hadoop 版本 2.7.0 运行。现在对于以下命令,我收到错误
hive> CREATE TABLE hbase_table_1(eid int, ename string, esal double)
> STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
> WITH SERDEPROPERTIES
> ("hbase.columns.mapping" = ":key,cfstr:enm,cfsal:esl")
> TBLPROPERTIES ("hbase.table.name" = "emp1");
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. org.apache.hadoop.hbase.HTableDescriptor.addFamily(Lorg/apache/hadoop/hbase/HColumnDescriptor;)V
如果我在 HBase 中创建一个表并使用外部表从 Hive 中引用该表,那就可以正常工作。
在 hive 主目录中,我创建了一个 auxlib 目录并复制了以下 jar 文件。
hduser@ubuntu:/usr/lib/hive/auxlib$ ls
commons-beanutils-1.7.0.jar commons-httpclient-3.0.1.jar hbase-checkstyle-1.0.1.jar hbase-protocol-1.0.1.jar
commons-beanutils-core-1.8.0.jar commons-io-2.4.jar hbase-client-1.0.1.jar hbase-rest-1.0.1.jar
commons-cli-1.2.jar commons-lang-2.6.jar hbase-common-1.0.1.jar hbase-server-1.0.1.jar
commons-codec-1.4.jar commons-logging-1.1.3.jar hbase-common-1.0.1-tests.jar hbase-server-1.0.1-tests.jar
commons-collections-3.2.1.jar commons-math-2.1.jar hbase-examples-1.0.1.jar hbase-shell-1.0.1.jar
commons-compiler-2.7.6.jar commons-pool-1.5.4.jar hbase-hadoop2-compat-1.0.1.jar hbase-testing-util-1.0.1.jar
commons-compress-1.4.1.jar commons-vfs2-2.0.jar hbase-hadoop-compat-1.0.1.jar hbase-thrift-1.0.1.jar
commons-configuration-1.6.jar guava-14.0.1.jar hbase-it-1.0.1.jar hive-hbase-handler-1.1.0.jar
commons-dbcp-1.4.jar hbase-annotations-1.0.1.jar hbase-it-1.0.1-tests.jar zookeeper-3.4.6.jar
commons-digester-1.8.jar hbase-annotations-1.0.1-tests.jar hbase-prefix-tree-1.0.1.jar
以下详细信息在.bashrc文件中设置
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0/
export JAVA_LIBRARY_PATH=$HADOOP_HOME/lib/native:$JAVA_LIBRARY_PATH
#alias java="`which java` -Dwhatever"
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB=$HADOOP_HOME/share/hadoop/common/lib
export HADOOP_TOOLS_LIB=$HADOOP_HOME/share/hadoop/tools/lib
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export HIVE_HOME="/usr/lib/hive"
export HBASE_HOME="/usr/lib/hbase"
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin:$HBASE_HOME/bin:$HADOOP_COMMON_LIB:$HADOOP_TOOLS_LIB:$PATH
您能否建议这里实际上出了什么问题。
【问题讨论】:
标签: hadoop hive hbase integration