HiveServer2(HS2)是一种允许客户端对Hive执行查询的服务。HiveServer2是HiveServer1的后续版本。HS2支持多客户端并发和身份验证,旨在为JDBC、ODBC等开放API客户端提供更好的支持。
HS2包括基于Thrift的Hive服务(TCP或HTTP)和用于WebUI的JettyWeb服务器。
HiveServer2 作用:
- 为Hive提供了一种允许客户端远程访问的服务
- 基于thrift协议,支持跨平台,跨编程语言对Hive访问
- 允许远程访问Hive
HiveServer2配置
配置规划:
节点 | HiveServer2 | client |
---|---|---|
master | ||
slave1 | √ | |
slave2 | √ |
配置步骤:
master
- 修改集群上的core-site.xml,增加以下内容:
<!--Hiveserver2连不上10000;hadoop为安装用户-->
<!--root用户可以代理所有主机上的所有用户-->
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
- 修改集群上的hdfs-site.xml,增加以下内容:
<!--Hiveserver2连不上10000;启用webhdfs服务-->
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
- 分发文件到集群中
stop-dfs.sh
rsync-script core-site.xml
rsync-script hdfs-site.xml
启动 HiveServer2
master
start-dfs.sh
slave2
nohup hiveserver2 &