了解Hive的都知道Hive有三种使用方式——CLI命令行,HWI(hie web interface)浏览器 以及 Thrift客户端连接方式。

为了体验下HWI模式,特意查询了多方的资料,都没有一个完整的部署方案,经过一下午的踩坑,这里特意总结一下,希望为后人节省点时间。

先放个图兴奋一下!

参考资源

文档资源

各个组件

  • hive 2.1.0
  • hadoop 2.7.3
  • jdk 1.8.0
  • ant 1.9.7

第一步,打war包

按照上面的链接,下载对应版本的src文件,首先解压文件:

tar -zxvf hive-2.1.0-src.tar.gz

然后进入目录${HIVE_SRC_HOME}/hwi/web,执行打包命令:

jar -cvf hive-hwi-2.1.0.war *

得到hive-hwi-2.1.0.war文件,复制到hive下的lib目录中。

cp hive-hwi-2.1.0.war ${HIVE_HOME}/lib

修改配置文件

修改hive的配置文件hive-site.xml(这个一般是你自己创建的,有可能是创建空的、也有可能是从hive-default.xml.template来的)

  <property>
<name>hive.hwi.listen.host</name>
<value>0.0.0.0</value>
<description>监听的地址</description>
</property>
<property>
<name>hive.hwi.listen.port</name>
<value>9999</value>
<description>监听的端口号</description>
</property>
<property>
<name>hive.hwi.war.file</name>
<value>lib/hive-hwi-2.1.0.war</value>
<description>war包所在的地址,注意这里不支持绝对路径,坑!</description>
</property>

复制tools.jar

不知道为什么,从很久以前的版本就有这个问题。找tools.jar一直找不到,所以需要手动复制一下:

cp ${JAVA_HOME}/lib/tools.jar ${HIVE_HOME}/lib

安装并配置ANT

Hive Web UI内部是需要Ant来进行编译的,所以需要事先安装ant。去上面提供的第二个网址链接中,下载最新版本的ant。

解压缩:

tar -zxvf apache-ant-1.9.7-bin.tar.gz

复制到/usr下

mv apache-ant-1.9.7 /usr

可以改个名字

mv apache-ant-1.9.7 ant-1.9.7

配置/etc/profile配置文件

vim /etc/profile
...
在最后面添加ant的路径
export ANT_HOME=/usr/ant-1.9.7
export PATH=$PATH:$ANT_HOME/bin
...

最后别忘记执行配置文件:

source /etc/profile

输入ant -version验证下ant是否装成功。

启动

上面的步骤都配置完,基本就大功告成了。进入${HIVE_HOME}/bin目录:

hive --service hwi

上面的命令会导致输出的信息直接打到控制台,推荐后台进程启动。

nohup bin/hive --service hwi > /dev/null 2> /dev/null &

访问:

前面配置了端口号为9999,所以这里直接在浏览器中输入:

localhost:9999/hwi

就能访问到web 界面了!

如果看不到结果,就多刷新几次~

使用的方法,就是创建一个session,然后在session里面去执行语句。

[转]手把手教你搭建Hive Web环境的更多相关文章

  1. 手把手教你搭建Hive Web环境

    了解Hive的都知道Hive有三种使用方式--CLI命令行,HWI(hie web interface)浏览器 以及 Thrift客户端连接方式. 为了体验下HWI模式,特意查询了多方的资料,都没有一 ...

  2. 用Python手把手教你搭建一个web框架-flask微框架!

    在之前的文章当中,小编已经教过大家怎么搭建一个Django框架,今天我们来探索另外的一种框架的搭建,这个框架就是web框架-flask微框架啦!首先我们带着以下的几个问题来阅读本文: 1.flask是 ...

  3. 手把手教你搭建Pytest+Allure2.X环境详细教程,生成让你一见钟情的测试报告(非常详细,非常实用)

    简介 宏哥之前在做接口自动化的时候,用的测试报告是HTMLTestRunner,虽说自定义模板后能满足基本诉求,但是仍显得不够档次,高端,大气,遂想用其他优秀的report框架替换之.一次偶然的机会, ...

  4. 庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境

    庐山真面目之十一微服务架构手把手教你搭建基于Jenkins的企业级CI/CD环境 一.介绍 说起微服务架构来,有一个环节是少不了的,那就是CI/CD持续集成的环境.当然,搭建CI/CD环境的工具很多, ...

  5. 大数据江湖之即席查询与分析(下篇)--手把手教你搭建即席查询与分析Demo

    上篇小弟分享了几个“即席查询与分析”的典型案例,引起了不少共鸣,好多小伙伴迫不及待地追问我们:说好的“手把手教你搭建即席查询与分析Demo”啥时候能出?说到就得做到,差啥不能差人品,本篇只分享技术干货 ...

  6. 手把手教你搭建 ELK 实时日志分析平台

    本篇文章主要是手把手教你搭建 ELK 实时日志分析平台,那么,ELK 到底是什么呢? ELK 是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kiban ...

  7. 手把手教你搭建FastDFS集群(下)

    手把手教你搭建FastDFS集群(下) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u0 ...

  8. 手把手教你搭建FastDFS集群(中)

    手把手教你搭建FastDFS集群(中) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/u0 ...

  9. 手把手教你搭建FastDFS集群(上)

    手把手教你搭建FastDFS集群(上) 本文链接:https://blog.csdn.net/u012453843/article/details/68957209        FastDFS是一个 ...

随机推荐

  1. JZOJ.5289【NOIP2017模拟8.17】偷笑

    Description berber走进机房,边敲门边喊:“我是哔哔”CRAZY转过头:“我警告你,哔哔刚刚来过!”“呵呵呵呵……”这时,哔哔站了起来,环顾四周:“你们笑什么?……”巧了,发出笑声的人 ...

  2. Arduino开发版学习计划--直流电机

    代码来源:http://www.cnblogs.com/starsnow/p/4579547.html // --------------------------------------------- ...

  3. 170411、java Socket通信的简单例子(UDP)

    服务端代码: package com.bobohe.socket; import java.io.*; import java.net.*; class UDPServer { public stat ...

  4. HQL的第一个程序

    使用HQL查询数据库: 分为以下几个步骤 1获取query对象 //1获取query对象 String hql="FROM Employee e where e.salary>?&qu ...

  5. Python全栈day10(基础知识练习题)

    一,执行python的两种方式 1,写在脚本里面调用python执行,例如python test.py 2,  输入python在命令行交互执行,例如 python  >>> pri ...

  6. closure--- 闭包与并行运算

      闭包有效的减少了函数所需定义的参数数目.这对于并行运算来说有重要的意义.在并行运算的环境下,我们可以让每台电脑负责一个函数,然后将一台电脑的输出和下一台电脑的输入串联起来.最终,我们像流水线一样工 ...

  7. 【chainer框架】【pytorch框架】

    教程: https://bennix.github.io/ https://bennix.github.io/blog/2017/12/14/chain_basic/ https://bennix.g ...

  8. 又一次认识java(四) — 组合、聚合与继承的爱恨情仇

    有人学了继承,认为他是面向对象特点之中的一个,就在全部能用到继承的地方使用继承,而不考虑到底该不该使用,无疑.这是错误的.那么.到底该怎样使用继承呢? java中类与类之间的关系 大部分的刚開始学习的 ...

  9. 利用Octopress在Github上搭建博客及后续问题总汇

    首先贴一下我的新博客地址: http://findingsea.github.io 用Octopress在GitHub上搭建博客已经不是什么新鲜事了,网上的教程也多了去了,大题的方法什么都差不多,这篇 ...

  10. Elasticsearch.js 发布 —— 在Node.js和浏览器中调用Elasticsearch(1)

    继PHP.Ruby.Python和Perl之后,Elasticsearch最近发布了Elasticsearch.js,Elasticsearch的JavaScript客户端库.可以在Node.js和浏 ...