2019独角兽企业重金招聘Python工程师标准>>>

Hive2.x

hive2.x特性

  • LLAP(Live Long and Process)Hive2.1进行了极大的性能优化。在Hive2.x开启LLAP与Apache Hive1.x进行对比测试,其性能提升约25倍。
  • 支持使用HPL/SQL的存储过程,Hive2.0.0推出的Hive Hybrid Procedural SQL On Hadoop (HPL/SQL) 是一个在Hive上执行过程SQL的工具,它可以表达复杂的业务规则。
  • 更智能的成本优化器CBO,Hive2.0开始持续不断地优化成本优化器CBO,尤其是在BI业务关注的TPC-DS查询上。
  • 提供全面详尽的监控和诊断工具,可以通过新的Hive Server2 Web UI,LLAP Web UI和Tez Web UI查看Hive相关的HQL查询以及关联的作业状态和日志。丰富了Hive用户的运维和排错的手段。

HiveServer

  • 在hive的机器上启动一个server:客户端可以通过ip + port的方式对其进行访问之后,就可以有很多客户端连到这个server上面去干活可以采用jdbc、odbc、beeline的方式进行连接
  • HiveServer是一种可选服务,允许远程客户端可以使用各种编程语言向Hive提交请求并检索结果。HiveServer无法处理来自多个客户端的并发请求.从Hive 0.11.0版本开始。建议使用HiveServer2。

HiveServer2

  • HiveServer2(HS2)是一种能使客户端执行Hive查询的服务。 HiveServer2是HiveServer1的改进版,HiveServer1已经被废弃。HiveServer2可以支持多客户端并发和身份认证。旨在为开放API客户端(如JDBC和ODBC)提供更好的支持。
  • 远程HiveServer2模式是Hive产品使用的推荐模式,它更加安全并且不需要直接为用户对HDFS/metastore进行赋权。

Beeline

  • 是hive的新hiveCLI

CLI hive -vs- Beeline

# Beeline操作结果
0: jdbc:hive2://node225:10000/movie> select * from t_user limit 5;
OK
+----------------+----------------+-------------+--------------------+-----------------+--+
| t_user.userid  | t_user.gender  | t_user.age  | t_user.occupation  | t_user.zipcode  |
+----------------+----------------+-------------+--------------------+-----------------+--+
| 1              | F              | 1           | 10                 | 48067           |
| 2              | M              | 56          | 16                 | 70072           |
| 3              | M              | 25          | 15                 | 55117           |
| 4              | M              | 45          | 7                  | 02460           |
| 5              | M              | 25          | 20                 | 55455           |
+----------------+----------------+-------------+--------------------+-----------------+--+
# hive 操作结果
hive> select * from t_user limit 5;
OK
1       F       1       10      48067
2       M       56      16      70072
3       M       25      15      55117
4       M       45      7       02460
5       M       25      20      55455
Time taken: 2.662 seconds, Fetched: 5 row(s)
hive>

要使用Beeline前需要先启动HiveServer2,启动过程中可以通过hiveconf设置相应的自定义参数和值,直接启动会占据当前连接会话,第一次可以直接启动,正常启动后可以切换至后台运行方式启动。

# 直接启动
[root@node225 ~]# /usr/local/hive-2.1.1/bin/hiveserver2 --hiveconf hive.server2.thrift.prot=10000
# 后台运行方式启动
[root@node225 ~]# /usr/local/hive-2.1.1/bin/hiveserver2 --hiveconf hive.server2.thrift.prot=10000 2>&1 >> /dev/null &#或者
#分别记录标准日志输出和错误日志
nohup /usr/local/hive-2.1.1/bin/hiveserver2 --hiveconf hive.server2.thrift.prot=10000 1>/usr/local/hive-2.1.1/hivelog/hiveserver.log 2>/usr/local/hive-2.1.1/hivelog/hiveserver.err &
#不记录日志
nohup /usr/local/hive-2.1.1/bin/hiveserver2 --hiveconf hive.server2.thrift.prot=10000 1>/dev/null 2>/dev/null &
nohup /usr/local/hive-2.1.1/bin/hiveserver2 --hiveconf hive.server2.thrift.prot=10000 >/dev/null 2>&1 &

beeline的使用

  • -n 指定机器登陆的名字,当前机器的登陆用户名
  • -u 指定一个连接串

每成功运行一个命令,hiveserver2启动的那个窗口,只要在启动beeline的窗口中执行成功一条命令,另外个窗口随即打印一个OK如果命令错误,hiveserver2那个窗口就会抛出异常

# beeline连接hive
[root@node225 ~]# /usr/local/hive-2.1.1/bin/beeline -u jdbc:hive2://node225:10000/movie -n root
which: no hbase in (.:/usr/local/jdk1.8.0_66//bin:/usr/local/zookeeper-3.4.10/bin:ZK_HOME/sbin:ZK_HOME/lib:/usr/local/hadoop-2.6.5//bin:/usr/local/hadoop-2.6.5//sbin:/usr/local/hadoop-2.6.5//lib:/usr/local/hive-2.1.1/bin:/usr/local/mongodb/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)
Connecting to jdbc:hive2://node225:10000/movie
Connected to: Apache Hive (version 2.1.1)
Driver: Hive JDBC (version 2.1.1)
18/10/09 14:03:00 [main]: WARN jdbc.HiveConnection: Request to set autoCommit to false; Hive does not support autoCommit=false.
Transaction isolation: TRANSACTION_REPEATABLE_READ
Beeline version 2.1.1 by Apache Hive
0: jdbc:hive2://node225:10000/movie> select current_database();
+----------------+--+
| database_name  |
+----------------+--+
| db_hive_edu    |
| default        |
| movie          |
+----------------+--+
3 rows selected (1.293 seconds)

可以在相同局域网内的其他部署hive的节点上通过Beelin连接指定的HiveServer2服务,进行多用户操作。

退出beeline连接用!quit

转载于:https://my.oschina.net/peakfang/blog/2239770

Hive2.x、HiveServer、HiveServer2简述及Beeline使用相关推荐

  1. Kettle安装与使用

    一.Kettle简介 Kettle最早是一个开源的ETL(Extract-Transform-Load的缩写)工具,全称为KDE Extraction, Transportation, Transfo ...

  2. hive2 java连接_用Java代码通过JDBC连接Hiveserver2

    1.在终端启动hiveserver2 #hiveserver2 2.使用beeline连接hive 另外打开一个终端,输入如下命令(xavierdb必须是已经存在的数据库) #beeline -u j ...

  3. Hive 客户端 Beeline 、IDEA|Eclipse使用JDBC连接hiveserver2

    1.Beline Beeline 要与HiveServer2配合使用 服务端启动hiveserver2 客户的通过beeline两种方式连接到hive a.beeline -u jdbc:hive2: ...

  4. Hiveserver2的代理执行之路

    背景 对于一个数据平台的SQL查询服务,impala提供了优于hive/spark sql等一批sql-on-mr/spark性能的查询引擎,并且得益于impala可以直接共享hive的metasto ...

  5. Hive Serde、Beeline、JDBC

    一.Hive Serde 用于做序列化和反序列化,构建在数据存储和执行引擎之间,对二者实现解耦. 创建表的2种规则row format:delimited和serde,正则匹配 创建表: CREATE ...

  6. Hive beeline详解

    Hive客户端工具后续将使用Beeline 替代HiveCLI ,并且后续版本也会废弃掉HiveCLI 客户端工具,Beeline是 Hive 0.11版本引入的新命令行客户端工具,它是基于SQLLi ...

  7. 【Hive】Beeline CLI介绍

    Beeline,它其实是HiveServer2的JDBC客户端,基于SQLLine命令行接口.Beeline Shell可以工作在嵌入式模式和远程模式,在嵌入式模式中,它运行一个嵌入式的Hive(类似 ...

  8. beeline安装_Beeline使用

    背景 hadoop2的hive采用了新的hive server,称为HiveServer2,HiveServer2中的CLI客户端不建议使用hive CLI,而是建议使用Beeline这个客户端,今天 ...

  9. Hive的Metastore服务和Hiveserver2服务的详细说明

    Hive的Metastore服务和Hiveserver2服务的详细说明 一.Metastore服务  1.什么时候需要开启和使用Metastore服务呢?   首先我们先来了解Hive获取Mysql元 ...

最新文章

  1. c语言中delay找不到标识符,51单片机的c语言,请问哪里错了?延时没有效果,但是编译又不报错。delay应该怎么写,怎么引用啊?...
  2. 仿Gin搭建自己的web框架(五)
  3. 自动驾驶中高精地图的大规模生产:视觉惯导技术在高德的应用
  4. python部落稿酬_Python之父考虑重构Python解释器
  5. 海天食品的java开发工作如何_再三个月就秋招了,我想找一份java开发工作,现在应该怎么准备一下?...
  6. ZFS 学习(转载)
  7. “公益AI之星”挑战赛-新冠疫情相似句对判定大赛
  8. P1043 数字游戏
  9. LINUX C正确遍历environ
  10. webpack5学习与实战-(九)-区分开发和生产环境的配置
  11. Egg.js框架的简单使用
  12. WIN10 未安装音频设备输出设备 喇叭红叉
  13. 建模常用Python代码
  14. ADSL防御黑客攻击的十大方法(转)
  15. 很迷茫,30岁,大专学历,没有一技之长,负债累累,怎么翻身?
  16. 旁路电容、去耦电容——EMC整改
  17. 什么是大数据(转自知乎)
  18. unity IOS 微信踩坑记录
  19. scanf与空白字符
  20. Android仿微信朋友圈图片上传选择器布局

热门文章

  1. 医院html完整页面设计代码,医院HTML5模板
  2. 用CSS3制作一个风车
  3. 1、模拟蚂蚁借呗—利息计算
  4. czl蒻蒟的OI之路16
  5. 狄克斯特拉算法 - 学习整理
  6. 数据结构与算法——23. 用嵌套列表与链表实现树结构
  7. 基于android的手机掌上购物
  8. python新年贺卡_写个新年贺卡生成器,各位小伙伴们新年快乐呀~
  9. 企业利用进销存软件可优化库存管理
  10. 怎样将kux格式转换mp4?高效简单的技巧你要懂