Hive客户端hive与beeline的区别

hive与beeline简介

1、背景

Hive的hive与beeline命令都可以为客户端提供Hive的控制台连接。两者之间有什么区别或联系吗?

Hive-cli(hive)是Hive连接hiveserver2的命令行工具,从Hive出生就一直存在,但随着Hive功能的增强、BUG的修复及版本升级,Hive-cli结构的局限性已经跟不上Hive的发展,如果强行更改又不能满足向下兼容,于是就出现了全新的beeline命令行结构。值得注意的是,Hive-cli能做的事beeline都能做,而beeline能做的事Hive-cli不一定能做

2、hive

Hive-cli(hive)的主要特点有:

  • Hive-cli是通过Metastore访问元数据的
  • CliDriver是SQL本地直接编译,然后访问Metastore,提交作业,是重客户端
  • 执行hive会自动运行一个RunJar进程,进程是提供Thrift的RPC的,就是Metastore服务

3、beeline

beeline的主要特点有:

  • beeline是一个纯粹的客户端,用来连接hiveserver2
  • beeLine将SQL提交给Hiveserver2,由Hiveserver2编译,然后访问Metastore,提交作业,是轻客户端
  • 多用户、安全、可以实现其权限控制

4、hive与beeline的关系

hive与beeline的主要区别为:

beeline有权限控制而Hive-cli没有,因为Hive-cli读取元数据绕过了Hiveserver2直接从Metastore访问元数据,而beeline通过Hiveserver2的管控,实现其多用户的权限控制

参考文章:https://www.cnblogs.com/gzgBlog/p/14902120.html

相关推荐
Theodore_10222 小时前
大数据(2) 大数据处理架构Hadoop
大数据·服务器·hadoop·分布式·ubuntu·架构
簌簌曌2 小时前
CentOS7 + JDK8 虚拟机安装与 Hadoop + Spark 集群搭建实践
大数据·hadoop·spark
Theodore_10224 小时前
大数据(1) 大数据概述
大数据·hadoop·数据分析·spark·hbase
IvanCodes6 小时前
六、Sqoop 导出
大数据·hadoop·sqoop
weixin_472339468 小时前
Doris查询Hive数据:实现高效跨数据源分析的实践指南
数据仓库·hive·hadoop
火龙谷9 小时前
【hadoop】相关集群开启命令
大数据·hadoop·分布式
神奇侠20241 天前
Hive SQL常见操作
hive·hadoop·sql
itachi-uchiha1 天前
Docker部署Hive大数据组件
大数据·hive·docker
viperrrrrrrrrr71 天前
大数据学习(131)-Hive数据分析函数总结
大数据·hive·学习
qq_408413391 天前
spark 执行 hive sql数据丢失
hive·sql·spark