温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
Fayson的github:https://github.com/fayson/cdhproject
提示:代码块部分可以左右滑动查看噢
1.文档编写目的
内容概述
1.环境准备
2.示例代码编写及说明
3.代码测试
测试环境
1.CM和CDH版本为5.13.1
2.CentOS6.5
3.Impala JDBC驱动版本2.5.41.1061
前置条件
1.集群未启用Kerberos
2.Impala已集成OpenLDAP
3.集群已启用Sentry
2.环境准备
1.下载Impala JDBC驱动包
(可左右滑动)
2.创建Java工程jdbcdemo
创建工程时注意加入Hadoop的依赖包
(可左右滑动)
将下载的Impala驱动包添加到jdbcdemo工程lib目录下,并加载到环境变量
3.示例访问代码
1.Impala示例代码
(可左右滑动)
由于集群已集成了OpenLDAP并启用了Sentry,所以在访问Impala时需要在JDBC URL连接串中指定AuthMech=3;UID=hive;PWD=123456参数。
AuthMech:认证类型,需要认证用户名和密码。
UID:在指定AuthMech为3时为必填字段
PWD:在指定AuthMech为3时为必填字段
2.Hive示例代码
(可左右滑动)
在访问集成OpenLDAP的HiveServer2时需要在获取Connection连接时需要输入LDAP的用户名和密码DriverManager.getConnection(URL,username,password)。
4.代码测试
1.Impala测试
在Intellij下直接运行代码,执行结果如下
指定一个权限低的用户faysontest进行查询
如果指定一个错误的用户或者密码
2.Hive测试
使用hive用户测试,hive用户拥有Hive库的所有权限,所以可以看到Hive下面所有的库。
使用faysontest用户测试,faysontest用户只拥有Hive库下的default库操作权限,所以我们可以看到只能获取到default库信息
输入错误的用户密码测试,是否能够正常访问
5.Beeline命令行测试
关于Beeline命令行访问Impala,Fayson在前面的文章也介绍过《如何使用Beeline连接Impala》,这里就不再重复说明。
1.Beeline访问Hive
2.Beeline访问Impala
(可左右滑动)
这里需要注意,在使用Beeline连接Impala的时候,除了JDBC URL中增加AuthMech=3;UID=faysontest;PWD=123456参数还需要在Beeline命令行增加–n faysontest –p 123456参数。
GitHub源码地址:
https://github.com/javaxsky/cdhproject/jdbcdemo
提示:代码块部分可以左右滑动查看噢
为天地立心,为生民立命,为往圣继绝学,为万世开太平。
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。
领取专属 10元无门槛券
私享最新 技术干货