Hadoop-2.7.7 + Hive-2.3.4配置开启HiveServer2,并且集成Zeppelin实现可视化

1.进入hive安装目录下的conf文件夹,更改hive-site.xml配置文件
其中配置参考hive安装中的配置hive-site.xml

你会发现/usr/hive/apache-hive-2.3.4-bin/conf/并没有hive-site.xml文件
直接新建一个就行

我的环境中已经配置了Hive-MetaStore,所以我这个文件之前就新建过了,如果是你新安装的hive ,那么你要自己新建一个hive-site.xml文件

5f89b9d22d9c6fe21dd5693e65660152583.jpg

 

整个文件完整内容如下:

其中粗体字部分是和hiveserver2有关的重要配置

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&amp;useSSL=false</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>123456</value>
    <description>password to use against metastore database</description>
  </property>
  <property>
        <name>hive.metastore.schema.verification</name>
        <value>false</value>
  </property>
  <property> 
     <name>hive.cli.print.current.db</name>
     <value>true</value>
  </property>
  <property> 
         <name>hive.cli.print.header</name>
         <value>true</value>
  </property>
  <!-- 这是hiveserver2 -->
  <property>
     <name>hive.server2.thrift.port</name>
     <value>10000</value>
  </property>

  <property>
    <name>hive.server2.thrift.bind.host</name>
    <value>127.0.0.1</value>
  </property>

  </configuration>

 

2.配置hadoop中的core-site.xml文件 

706edf788d7f3190bf3c0087509a8d2eb36.jpg

core-site.xml完整代码如下:

绿色粗体代码部分是核心配置

name标签中的hadoop.proxyuser.${用户名}.groups

这个${用户名}就是增加允许用来连接hiveserver2的username

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
  Licensed under the Apache License, Version 2.0 (the "License");
  you may not use this file except in compliance with the License.
  You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License. See accompanying LICENSE file.
-->

<!-- Put site-specific property overrides in this file. -->

<configuration>
    <!-- 指定HDFS老大(namenode)的通信地址 -->
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://127.0.0.1:9000</value>
    </property>
    <!-- 指定hadoop运行时产生文件的存储路径 -->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/opt/hadoop/hadoop-temp</value>
    </property>


   <!-- 如果连接不上10000 -->

  <property>     
    <name>hadoop.proxyuser.root.hosts</name>     
    <value>*</value>
  </property> 
  <property>     
    <name>hadoop.proxyuser.root.groups</name>    
    <value>*</value> 
  </property>
  <property>     
    <name>hadoop.proxyuser.chenjun.hosts</name>     
    <value>*</value> 
  </property> 
  <property>     
    <name>hadoop.proxyuser.chenjun.groups</name>     
    <value>*</value> 
  </property>
  <property>     
    <name>hadoop.proxyuser.hive.hosts</name>     
    <value>*</value> 
  </property> 
  <property>     
    <name>hadoop.proxyuser.hive.groups</name>     
    <value>*</value> 
  </property>

</configuration>

 第三步,启动HiveServer2

 

#以nohup形式启动hiveserver2
cd $HIVE_HOME
nohup hiveserver2>> hiveserver2.log 2>&1 &

回车之后 

切换到root ,看看10000端口的进程是不是起来了

lsof -i:10000

e8ebc1d5172f7d2f9593ba4ae649ede09bc.jpg

如上图所示,可以看到 进程已经起来了

访问一下 localhost:10002 看看能不能打开

faedc221dc2914aad8c50b08cc03e2ec20d.jpg

可以看到服务确实启动了

 

第四步,启动Zeppelin,并且配置和HiveServer2相关的解释器(Interpreter)

Zeppelin安装只需启动一个shell文件就完成了,及其简单 ,此处略去安装步骤

0079d2d63631ecae899360aefc522e575e2.jpg

然后会进入一个表单填写的界面

e21bb8395bcfcc31a0a60162976cf88dc7c.jpg

 

hiveserver2-jdbc解释器配置,只需填写四处即可

1. default.driver   填写 org.apache.hive.jdbc.HiveDrivera

2. default.url    填写 jdbc:hive2://localhost:10000/test

3. default.user  填写  chenjun  

4.Dependencies部分,把驱动加入到Dependencies中 ,如下图,

ad00a611355df54cdde9e465dc937bf3bcd.jpg

 

注意:

第三项的user填写必须要和之前上面提到的core-site.xml配置的user一样!

第四项的版本必须兼容你的hive版本 ,比如我hive是2.3.4, 自然使用了2.3.4的jar驱动

配置完成之后保存, 然后在Zeppelin中新建一个notebook

然后就说编写SQL,进行测试

此处我预先建了一张表 t_plate_num_report (车辆信息表)

a2232ea6ac6bc92fef32d737431ca696e09.jpg

等待执行完毕,自动展示图表

94a53008f27c2261bf78d75b17e156fe366.jpg

 

 

转载于:https://my.oschina.net/u/2338224/blog/3077938

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值