36.Beeline连接Impala

36.1 实验环境

  • CM和CDH版本为5.11.2和5.13.0
  • Kerberos环境和非Kerberos环境

36.2 实验操作

  • Impala JDBC驱动部署
    • 下载Impala JDBC驱动包
    • 下载地址:https://downloads.cloudera.com/connectors/impala_jdbc_2.5.41.1061.zip
  • 将驱动包解压至 /root/impaladriver目录
[root@ip-172-31-6-148 impaladriver]# pwd
/root/impaladriver
[root@ip-172-31-6-148 impaladriver]# ll
total 13576
-r--r--r-- 1 root root   46725 Jun  2 12:46 commons-codec-1.3.jar
-r--r--r-- 1 root root   60686 Jun  2 12:46 commons-logging-1.1.1.jar
-r--r--r-- 1 root root 7670596 Jun  2 12:50 hive_metastore.jar
-r--r--r-- 1 root root  596600 Jun  2 12:50 hive_service.jar
-r--r--r-- 1 root root  352585 Jun  2 12:46 httpclient-4.1.3.jar
-r--r--r-- 1 root root  181201 Jun  2 12:46 httpcore-4.1.3.jar
-rw-rw-rw- 1 root root 1581890 Jun  2 12:52 ImpalaJDBC41.jar
-r--r--r-- 1 root root  275186 Jun  2 12:46 libfb303-0.9.0.jar
-r--r--r-- 1 root root  347531 Jun  2 12:46 libthrift-0.9.0.jar
-r--r--r-- 1 root root  367444 Jun  2 12:46 log4j-1.2.14.jar
-r--r--r-- 1 root root  294796 Jun  2 12:50 ql.jar
-r--r--r-- 1 root root 1307923 Jun  2 12:50 TCLIServiceClient.jar
-r--r--r-- 1 root root  792964 Jun  2 12:46 zookeeper-3.4.6.jar
[root@ip-172-31-6-148 impaladriver]# 
  • 将压缩包内的ImpalaJDBC41.jar和TCLIServiceClient.jar两个jar包拷贝至
    /opt/cloudera/parcels/CDH/lib/hive/auxlib目录下
    • 在集群所有的Hive Gateway 节点上部署Impala的驱动包。
[root@ip-172-31-6-148 auxlib]# ll
total 2828
lrwxrwxrwx 1 root root      48 Oct 16 12:33 hive-exec-1.1.0-cdh5.13.0-core.jar -> ../../../jars/hive-exec-1.1.0-cdh5.13.0-core.jar
lrwxrwxrwx 1 root root      34 Oct 16 12:33 hive-exec-core.jar -> hive-exec-1.1.0-cdh5.13.0-core.jar
-rw-r--r-- 1 root root 1581890 Oct 25 03:14 ImpalaJDBC41.jar
-r--r--r-- 1 root root 1307923 Oct 25 03:14 TCLIServiceClient.jar
[root@ip-172-31-6-148 auxlib]# pwd
/opt/cloudera/parcels/CDH/lib/hive/auxlib
[root@ip-172-31-6-148 auxlib]# 
  • Beeline命令行测试
    • 非Kerberos环境下测试
[root@ip-172-31-6-148 auxlib]# beeline -d "com.cloudera.impala.jdbc41.Driver" -u "jdbc:impala://ip-172-31-5-190.fayson.com:21050"
-d com.cloudera.impala.jdbc41.Driver -u jdbc:impala://ip-172-31-5-190.fayson.com:21050
Connecting to jdbc:impala://ip-172-31-5-190.fayson.com:21050
Connected to: Impala (version 2.10.0-cdh5.13.0)
Driver: ImpalaJDBC (version 02.05.38.1058)
Error: [Simba][JDBC](11975) Unsupported transaction isolation level: 4. (state=HY000,code=11975)
Beeline version 1.1.0-cdh5.13.0 by Apache Hive
0: jdbc:impala://ip-172-31-5-190.fayson.com:2> show databases;
+-------------------+-----------------------------------------------+--+
|       name        |                    comment                    |
+-------------------+-----------------------------------------------+--+
| _impala_builtins  | System database for Impala builtin functions  |
| default           | Default Hive database                         |
+-------------------+-----------------------------------------------+--+
2 rows selected (0.22 seconds)
0: jdbc:impala://ip-172-31-5-190.fayson.com:2> 
  • Kerberos环境下测试
    • 初始化Kerberos账号
[ec2-user@ip-172-31-22-86 ~]$ kinit fayson
Password for fayson@CLOUDERA.COM: 
[ec2-user@ip-172-31-22-86 ~]$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: fayson@CLOUDERA.COM

Valid starting       Expires              Service principal
10/25/2017 09:33:26  10/26/2017 09:33:26  krbtgt/CLOUDERA.COM@CLOUDERA.COM
        renew until 11/01/2017 09:33:26
[ec2-user@ip-172-31-22-86 ~]$
[root@ip-172-31-22-86 auxlib]# beeline -d "com.cloudera.impala.jdbc41.Driver" -u "jdbc:impala://ip-172-31-26-80.ap-southeast-1.compute.internal:21050/;AuthMech=1;KrbServiceName=impala;KrbRealm=CLOUDERA.COM;KrbHostFQDN=ip-172-31-26-80.ap-southeast-1.compute.internal;"
…
0: jdbc:impala://ip-172-31-26-80.ap-southeast> show databases;
+-------------------+-----------------------------------------------+--+
|       name        |                    comment                    |
+-------------------+-----------------------------------------------+--+
| _impala_builtins  | System database for Impala builtin functions  |
| default           | Default Hive database                         |
| tpcds_parquet     |                                               |
| tpcds_text        |                                               |
+-------------------+-----------------------------------------------+--+
4 rows selected (0.171 seconds)
0: jdbc:impala://ip-172-31-26-80.ap-southeast> 
  • 参数讲解:
    • AuthMech:设置认证类型,1为Kerberos认证。
    • KrbServiceName:Impala服务器的Kerberos服务主体名称。
    • KrbHostFQDN:连接Impala所在服务的HostFQDN。
  • 总结
    • 使用Beeline连接Impala时需要将Impala的驱动包添加到Hive的lib目录下,否则是无法使用jdbc:impala://hostname:21050连接Impala。
    • 在非Kerberos环境下使用Beeline连接Impala时,指定登录用户无效,无法通过select current_user() 获取当前登录用户。
    • 在Kerberos环境下使用Beeline连接Impala时,必须要在jdbc url连接增加AuthMech、KrbServiceName、KrbHostFQDN参数。

大数据视频推荐:
CSDN
大数据语音推荐:
企业级大数据技术应用
大数据机器学习案例之推荐系统
自然语言处理
大数据基础
人工智能:深度学习入门到精通

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值