前言
Hive成功安装后,如果有权限登录集群内部,直接在集群的shell的下输入hive进入hive的shell环境,如图1,在该环境下执行hive-sql,自然是最稳定,也是初学者必走的一步;但是对于工作量大的项目者,这种既不带智能提示,复制粘贴查询结果,导出数据又差劲的交互式平台,自然很鸡肋,这里就推荐几款款很棒的交互式JDBC连接工具;
官方亲儿子Hue和 Zeppelin
apache推荐的两款 交互式数据分析变得可行的基于网页的notebook,这两款之间是相互独立的,通常Hue只适合Hive,Zeppelin还能成为spark的交互式界面,两款都是一样,需要集群开通一定的端口,下载做一定配置即可,这里不是重点介绍;
dbeaver客户端
dbeaver是我个人非常喜欢的一个连接hive的客户端,因为:
- 免费,支持多种常见db的连接,联网自动下载适合的JDBC驱动包;
- 风格很像navicat和ssms的结合体,支持各类数据导入导出,复制表头,生成数据的各类操作语句等日常操,还能有提示语法,以及生成和查看E-R图,执行快捷键和ssms一样 Alt + x,非常的方便;
- 缺点:连接hive如果你隔了半个小时左右后没操作,会报错,如图2,需要点击一下断开/重新连接即可(只有Hive有这毛病,希望官方能早点修复)!
dbeaver下载:https://dbeaver.io/download/
dbeaver的配置:
首先,在集群安装的Hive目录下找到hive-jdbc-2.3.5-standalone.jar这个包,下载到你本机的一个地方;然后打开安装好的dbeaver,如图,打开数据,新建连接,
删除自带的1处内容,添加刚刚保存的到hive-jdbc-2.3.5-standalone.jar,然后点确定后点击完成,即可大功告成;
DG(datagrip)客户端
datagrip也是一款当下非常时髦的大数据组件连接客户端,
- 支持多种常见db的连接,联网自动下载适合的JDBC驱动包;
- 风格很像navicat和ssms的结合体,支持各类数据导入导出,复制表头,生成数据的各类操作语句等日常操,还能有提示语法,以及生成和查看E-R;
- Hive隔了半个小时左右后没操作后会自动刷新断开/重新连接,非常人性化;
- 如果没网的话,只要在有网的机器安装某个DB的驱动JDBC包,然后找到C:\Users\liuxiaowei.DataGrip2019.3\config\jdbc-drivers下的文件,copy过去重启客户端即可,如图6;
- 缺点:收费,不花钱的话只能免费试用30天。
下载链接: https://www.jetbrains.com/datagrip/
注意:这玩意配置好连接后,需要再编辑一下配置,然后选择schema,然后选择All schema,不然可能看不到你想要的数据库,如图7;
最终的界面展示如图8:
最后的忠告
工具犹如美酒,虽好但不要贪杯,当工具发生异常是,请检查Hive JDBC配置是否正常启动,还有工具本身不能尽善尽美,复杂查询几十几百个join的时候,工具可能没有结果,反复排除sql异常后,也可能是工具本身的不足出不来结果,这个时候别忘了在hive的cli环境下跑一下,cli虽然只有黑框,没有智能提示,但是是hive最友好的界面,切记,切记!