首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用Java代码通过JDBC连接只启用Sentry的Impala异常分析

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

Fayson的github:https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1.问题描述

测试环境描述:

CM和CDH版本为5.13.1

集群只启用了Sentry

Impala JDBC2.5.42

在使用Java代码访问只启用了Sentry的Impala集群,即集群未启用认证比如LDAP或者Kerberos,会出现获取JDBC连接hang死的现象,具体示例代码如下:

(可左右滑动)

在JDBC连接的URL中指定了AuthMech=2;UID=hive参数后在获取Connection时一直hang住无法正常获取JDBC连接。

2.解决方法

1.将Impala驱动Cloudera_ImpalaJDBC41,并加上参数PWD为空,修改JDBC URL连接为如下:

(可左右滑动)

2.运行示例代码执行如下

执行成功,获取到JDBC的连接,成功查询到所有的Datebase库。

3.总结

1.在下载Impala JDBC驱动包时里面有Cloudera_ImpalaJDBC4和Cloudera_ImpalaJDBC41两个版本选择41这个版本的。

2.修改JDBC URL为如下即可正常获取JDBC连接

jdbc:impala://13.229.116.237:21050/default;AuthMech=3;UID=hive;PWD=;UseSasl=0

关于这个JDBC连接的异常是一个bug具体可以参考如下jira描述:

https://issues.apache.org/jira/browse/IMPALA-5040

3.驱动包的下载地址为:

https://downloads.cloudera.com/connectors/impala_jdbc_2.5.42.1062.zip

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180129G12ERI00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券