hive之beeline客户端操作hive

1、hiveserver2简介

Hiveserver2简称hs2,它是一个允许多客户端并发连接的hive服务,客户端可通过jdbc、odbc方式去连接此服务操作hive。

之前的hive启动的窗口,纯粹是一个客户端,exit退出后hive就停止了。

2、启动hiveserver2

cd ~/app/hive-1.1.0-cdh5.7.0/bin/  #进入hive安装目录

./hiveserver2   #启动hiveserver2 ,我这里是前台启动,正常是后台nohup启动

3、使用beeline连接hive

beeline -u jdbc:hive2://hadoop002:10000/default -n hadoop

# -u, 必选,指定hive的连接串,默认是10000端口,使用default数据库

#-n,必选,指的是hiveserver2所在机器的用户名,非数据库用户名,我没指定启动的hs2用户名,报因权限连接不上问题。

!quit  #退出beeline客户端

hs2默认配置:hive-site.xml

#hs2端口
<property>
<name>hive.server2.thrift.port</name>
<value>10000</value>
</property>
#hs2用户登录方式,NONE表示不登录
<property>
<name>hive.server2.authentication</name>
<value>NONE</value>
</property>

 

扩展1 :生产中除了使用hiveserver2+beeline方式操作hive外,有的采用 thriftserver+beeline方式操作hive,thriftserver 是hiveserver的别称。HiveServer和HiveServer2都是基于Thrift的,但是HiveServer不能处理多于一个客户端的并发请求,这是由于HiveServer使用的Thrift接口所导致的限制,不能通过修改HiveServer的代码修正。因此在Hive-0.11.0版本中重写了HiveServer代码得到了HiveServer2,进而解决了该问题。

扩展2:thrift简介:Thrift是一个跨语言的服务部署框架,最初由Facebook于2007年开发,2008年进入Apache开源项目。Thrift通过IDL(Interface Definition Language,接口定义语言)来定义RPC(Remote Procedure Call,远程过程调用)的接口和数据类型,然后通过thrift编译器生成不同语言的代码(目前支持C++,Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk和OCaml),并由生成的代码负责RPC协议层和传输层的实现即Thrift搭建的服务能够实现多语言访问,thrift底层数据交互协议走的是RPC协议。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值