|NO.Z.00021|——————————|^^ 配置 ^^|——|Hadoop&Hive.V21|——|Hive.v21|Hive元数据之metastore三种方式.v03|

一、HiveServer2
### --- HiveServer2

~~~     HiveServer2是一个服务端接口,使远程客户端可以执行对Hive的查询并返回结果。
~~~     目前基于Thrift RPC的实现是HiveServer的改进版本,并支持多客户端并发和身份验证,
~~~     启动hiveServer2服务后,就可以使用jdbc、odbc、thrift 的方式连接。
~~~     Thrift是一种接口描述语言和二进制通讯协议,它被用来定义和创建跨语言的服务。
~~~     它被当作一个远程过程调用(RPC)框架来使用,是由Facebook为“大规模跨语言服务开发”而开发的。
~~~     HiveServer2(HS2)是一种允许客户端对Hive执行查询的服务。
~~~     HiveServer2是HiveServer1的后续 版本。
~~~     HS2支持多客户端并发和身份验证,旨在为JDBC、ODBC等开放API客户端提供更好的支持。
~~~     HS2包括基于Thrift的Hive服务(TCP或HTTP)和用于Web UI 的Jetty Web服务器。
### --- HiveServer2作用:

~~~     为Hive提供了一种允许客户端远程访问的服务
~~~     基于thrift协议,支持跨平台,跨编程语言对Hive访问
~~~     允许远程访问Hive
二、HiveServer2配置:配置规划:
节点 HiveServer2 client(beeline)
linux121    
linux122  
linux123  
三、配置步骤:
### --- 修改集群上的 core-site.xml,增加以下内容:

[root@linux121 ~]# vim /opt/yanqi/servers/hadoop-2.9.2/etc/hadoop/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>
 
[root@linux121 ~]# stop-dfs.sh
### --- 修改 集群上的 hdfs-site.xml,增加以下内容:

[root@linux121 ~]# vim /opt/yanqi/servers/hadoop-2.9.2/etc/hadoop/hdfs-site.xml
<!-- HiveServer2 连不上10000;启用 webhdfs 服务 -->
<property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
</property>
~~~     # 发送到其它节点上

[root@linux121 ~]# cd /opt/yanqi/servers/hadoop-2.9.2/etc/hadoop/
[root@linux121 hadoop]# scp core-site.xml linux122:$PWD
core-site.xml                                                                                                                                                100% 1268    24.2KB/s   00:00    
[root@linux121 hadoop]# scp core-site.xml linux123:$PWD
core-site.xml                                                                                                                                                100% 1268   735.4KB/s   00:00    
[root@linux121 hadoop]# scp hdfs-site.xml linux122:$PWD
hdfs-site.xml                                                                                                                                                100% 1196    23.8KB/s   00:00    
[root@linux121 hadoop]# scp hdfs-site.xml linux123:$PWD
hdfs-site.xml

[root@linux121 ~]# start-dfs.sh
### --- 启动linux123上的 HiveServer2 服务
~~~     # 启动 hiveserver2 服务
[root@linux123 ~]# nohup hiveserver2 &
 
~~~     # 检查 hiveserver2 端口
[root@linux123 ~]# lsof -i:10000
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    14577 root  522u  IPv4 373798      0t0  TCP *:ndmp (LISTEN)
[3]+  Exit 255                nohup hiveserver2
~~~     # 从2.0开始,HiveServer2提供了WebUI
~~~     # 还可以使用浏览器检查hiveserver2的启动情况。http://linux123:10002/
四、启动 linux122 节点上的 beeline
### --- 启动 linux122 节点上的 beeline

~~~     Beeline是从 Hive 0.11版本引入的,是 Hive 新的命令行客户端工具。
~~~     Hive客户端工具后续将使用Beeline 替代 Hive 命令行工具 ,
~~~     并且后续版本也会废弃掉 Hive 客户端工具。
[root@linux122 ~]# cd /opt/yanqi/servers/hive-2.3.7/bin/
[root@linux122 bin]# ./beeline                  // 什么都没有连接上
Beeline version 2.3.7 by Apache Hive        
beeline> !connect jdbc:hive2://linux123:10000   // 连接到数据库上
0: jdbc:hive2://linux123:10000> show databases; // 此刻可以查询到数据
+----------------+
| database_name  |
+----------------+
| default        |
| mydb           |
| mydb1          |
+----------------+
    
beeline> !connect jdbc !connect jdbc:hive2://linux123:10000
Enter username for jdbc:hive2://linux123:10000: use mydb;
Enter username for jdbc:hive2://linux123:10000: show tables;
Enter username for jdbc:hive2://linux123:10000: select * from emp;
Enter username for jdbc:hive2://linux123:10000: create table tabtest1 (c1 int, c2 string);
0: jdbc:hive2://linux123:10000> !connect jdbc:mysql://linux123:3306
0: jdbc:hive2://linux123:10000> !help
0: jdbc:hive2://linux123:10000> !quit

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

posted on 2022-04-07 14:37  yanqi_vip  阅读(54)  评论(0)    收藏  举报

导航