hive client java_2018-09-05期 Hive客户端操作(JDBC和Thrift方式)

本文介绍了如何使用HiveServer2通过JDBC和Thrift方式远程操作Hive。HiveServer2解决了HiveServer的并发请求问题,支持多客户端并发和认证。文中展示了Java代码示例,包括JDBC连接Hive查询数据,以及Thrift方式执行Hive查询并获取结果。
摘要由CSDN通过智能技术生成

说明:

使用的都是CLI或者hive –e的方式仅允许使用HiveQL执行查询、更新等操作。然而Hive也提供客户端的实现,通过HiveServer或者HiveServer2,客户端可以在不启动CLI的情况下对Hive中的数据进行操作,两者都允许远程客户端使用多种编程语言如Java、Python向Hive提交请求,取回结果。

HiveServer与HiveServer2的异同?

HiveServer和HiveServer2都是基于Thrift。既然已经存在HiveServer为什么还需要HiveServer2呢?因为HiveServer不能处理多于一个客户端的并发请求,这是由于HiveServer使用的Thrift接口所导致的限制,不能通过修改HiveServer的代码修正。因此在Hive-0.11.0版本中重写了HiveServer代码得到了HiveServer2,进而解决了该问题。HiveServer2支持多客户端的并发和认证,为开放API客户端如JDBC、ODBC提供了更好的支持。

启动hiverServer服务

要启动HiveServer服务器,只需要在hive-site.xml中配置相关参数即可

hive.server2.thrift.port

10000

hive.server2.thrift.bind.host

192.168.1.201

hive.server2.long.polling.timeout

5000

启动元数据库

先启动元数据库,在命令行中键入:

[root@hadoop-server01 ~]# hive --service metastore &

启动服务

#hive --service hiveserver >/dev/null &

以上命令启动hiveserver2服务。

Hive提供了jdbc驱动,使得我们可以用java代码来连接Hive并进行一些类关系型数据库的sql语句查询等操作。首先,我们必须将Hive的服务,也就是HiveServe打开。如果启动hiveserver就把上面命令改为

#hive --service hiveserver >/dev/null &

一、新建Java工程,并导入需要的依赖包

1、新建Java工程

这里省略掉

2、添加Hive依赖包

新建hivel

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值