温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
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
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
领取专属 10元无门槛券
私享最新 技术干货