嗨我在尝试使用hiveserver2从远程hadoop集群获取数据时遇到问题.
JDBC连接的工作原理是元数据查询(如show tables
工作状态)甚至需要简单列出数据的查询等select * from table
也在工作.但是当导致hadoop上的map-reduce作业的查询执行时作为select count(*) from table
然后它抛出一个连接exception.I可以在无任何错误地执行查询蜂房日志中看到.
我用beeline尝试了同样的事情,当我使用连接时它工作localhost
但是当我使用服务器名称连接时,执行只是挂起.
我确信我有一些导致此问题的配置属性.
我使用的是hadoop 2.0版和Hive版本0.12.0
仅为了清楚起见,在客户端抛出的错误如下
Exception in thread "main" java.sql.SQLException: org.apache.thrift.transport.TTransportException at org.apache.hive.jdbc.HiveStatement.execute(HiveStatement.java:203) at org.apache.hive.jdbc.HiveStatement.executeQuery(HiveStatement.java:300) at com.nanobi.contentserver.Aatest.HiveJdbcClient.main(HiveJdbcClient.java:57)
就像我说的那样,服务器或hive.log上没有错误,并且查询成功执行.最好的猜测是,在获取查询结果时会抛出错误.但是不能找到确切的位置.
如果需要进一步说明以解决问题,请告诉我
提前致谢