jerryliun
2017-09-20 01:42
采纳率: 82.6%
浏览 1.2k
已采纳

hive访问不到sdb中的数据

【版本信息】
hive 0.10.0
hadoop 2.6.0
java 8
【问题详细描述】
当在hive的shell中查询sdb中的数据的时候报错:
hive> select * from sdb_tab11;
OK
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.hadoop.hive.serde2.ColumnProjectionUtils.getReadColumnIDs(Lorg/apache/hadoop/conf/Configuration;)Ljava/util/List;
at com.sequoiadb.hive.SdbHiveInputFormat.getRecordReader(SdbHiveInputFormat.java:35)
at org.apache.hadoop.hive.ql.exec.FetchOperator.getRecordReader(FetchOperator.java:410)
at org.apache.hadoop.hive.ql.exec.FetchOperator.getNextRow(FetchOperator.java:486)
at org.apache.hadoop.hive.ql.exec.FetchOperator.pushRow(FetchOperator.java:466)
at org.apache.hadoop.hive.ql.exec.FetchTask.fetch(FetchTask.java:136)
at org.apache.hadoop.hive.ql.Driver.getResults(Driver.java:1387)
at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:270)
at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:216)
at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:412)
at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:755)
at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:613)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at org.apache.hadoop.util.RunJar.run(RunJar.java:221)
at org.apache.hadoop.util.RunJar.main(RunJar.java:136)
复制代码

其中 sdb_tab11这个表中是有数据的,在sdb中能够查询到,已将 SequoiaDB目录下的 hadoop/hive-sequoiadb-apache.jar 和 java/sequoiadb.jar拷贝到 hive/lib 安装目录下;
这是hive-site.xml

hive.aux.jars.path
file:///usr/local/hive/hive-0.10.0/lib/hive-sequoiadb-apache.jar,file:///usr/local/hive/hive-0.10.0/lib/sequoiadb.jar
Sequoiadb store handler jar file


hive.auto.convert.join
false

复制代码

其中这个jar文件在hdfs中也有,路径一样

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 巨杉数据库SequoiaDB 2017-09-20 01:45
    已采纳

    【解决办法】
    一种可能性是没有加载到hive-serde-*.jar,这个是hive自带的。
    还有一种可能性是getReadColumnIDs这个接口hive的不同版本间不兼容 。
    请排查。

    已采纳该答案
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题