Hive Web Interface(HWI)简介:Hive自带了一个Web-GUI,功能不多,可用于效果展示,如果没有安装Hue的话,是个不错的选择。

由于hive-bin包中没有包含HWI的页面,只有Java代码编译好的jar包:hive-hwi-1.0.1.jar

因此需要下载源码从中提取jsp文件并打包成war文件到hive-lib目录中:

cd apache-hive-1.0.1-src/hwi

jar cfM hive-hwi-1.0.1.war -C web .

最后将hive-hwi-1.2.0.war放到hive-lib目录下即可启动hwi服务:

 export hivelog='/usr/local/hive/logs'

 #mkdir -p $hivelog

 export HIVE_HOME='/usr/local/hive/apache-hive-1.0.1-bin' 

 $HIVE_HOME/hive --service hiveserver2 > $hivelog/hiveserver2.log 2>&1 &

 $HIVE_HOME/hive --service metastore > $hivelog/metastore.log 2>&1 &

 $HIVE_HOME/hive --service hwi > $hivelog/hwi.log 2>&1 &

但是发现hwi启动失败,报错:

ERROR hwi.HWIServer: HWI WAR file not found at /usr/local/hive/usr/local/hive/lib/hive-hwi-1.0.1.war

原因是hwi启动脚本($HIVE_HOME/bin/ext/hwi.sh)的bug:

export HWI_WAR_FILE=$(ls ${HIVE_LIB}/hive-hwi-*.war)

直接修改脚本为:

export HWI_WAR_FILE=$(ls $HIVE_LIB/hive-hwi-*.war | awk -F/ '{print "lib/"$NF}')

当然,也可以在配置文件hive-site.xml中指定:

 <property>

     <name>hive.hwi.war.file</name>

     <value>lib/hive-hwi-1.0.1.war</value>

     <description>This sets the path to the HWI war file, relative to ${HIVE_HOME}. </description>

 </property>

 <property>

     <name>hive.hwi.listen.host</name>

     <value>0.0.0.0</value>

     <description>This is the host address the Hive Web Interface will listen on</description>

 </property>

 <property>

 <name>hive.hwi.listen.port</name>

    <value>9999</value>

     <description>This is the port the Hive Web Interface will listen on</description>

 </property>

接着访问URL:http://ubuntu:9999/hwi/

然而继续报错:

ERROR compiler.Compiler: Javac exception Unable to find a javac compiler; com.sun.tools.javac.Main is not on the classpath. Perhaps JAVA_HOME does not point to the JDK. It is currently set to "/usr/local/java/jre"

原因:jetty编译jsp类时,ant没有识别到正确的jdk路径。

解决:

ln -s $JAVA_HOME/lib/tools.jar $HIVE_HOME/lib/

或者cp  $JAVA_HOME/lib/tools.jar /usr/lib/hive/lib/

接着访问URL:http://ubuntu:9999/hwi/

然而继续报错:jsp解析错误,原来是缺少jsp的包,把jasper-compiler-5.5.23.jar、jasper-runtime-5.5.23.jar和jsp-2.1-6.1.14.jar拷贝到hive的lib下。

接着访问URL:http://ubuntu:9999/hwi/

并执行创建表

 CREATE TABLE table1(foo STRING , bar MAP<STRING, STRING>)

     ROW FORMAT DELIMITED

     FIELDS TERMINATED BY 't'

     COLLECTION ITEMS TERMINATED BY ','

     MAP KEYS TERMINATED BY ':'

     STORED AS TEXTFILE;

创建成功,心里一阵高兴,然后又创建一个表table2。

执行

load data local inpath "/usr/local/hive/apache-hive-1.0.1-bin/examples/files/map_table.txt"  overwrite into table table1;

没有问题,看来没啥问题了。

然后执行

insert into table table2 select foo,bar from table1;

又报错了

原来hive-site.xml的配置文件jars.path有问题,注释掉配置。

Hive安装(一)之环境配置的更多相关文章

  1. 史上最全Windows版本搭建安装React Native环境配置

    史上最全Windows版本搭建安装React Native环境配置 配置过React Native 环境的都知道,在Windows React Native环境配置有很多坑要跳,为了帮助新手快速无误的 ...

  2. 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用

    史上最详细Windows版本搭建安装React Native环境配置   2016/01/29 |  React Native技术文章 |  Sky丶清|  95条评论 |  33530 views ...

  3. Oracle 12cR1 RAC 在VMware Workstation上安装(上)—OS环境配置

    Oracle 12cR1 RAC 在VMware Workstation上安装(上)-OS环境配置 1.1  整体规划部分 1.1.1  所需软件介绍 Oracle RAC不支持异构平台.在同一个集群 ...

  4. OVS + dpdk 安装与实验环境配置

    ***DPDK datapath的OVS的安装与实验环境配置 首先肯定是DPDK的安装       0:安装必要的工具            make            gcc           ...

  5. laravel5.8笔记一:安装与服务器环境配置

    laravel版本:5.8 环境要求: PHP >= 7.1.3 OpenSSL PHP 扩展 PDO PHP 扩展 Mbstring PHP 扩展 Tokenizer PHP 扩展 XML P ...

  6. Ubuntu16.04安装后开发环境配置和常用软件安装

    Ubuntu16.04安装后1.安装常用软件搜狗输入法+编辑器Atom+浏览器Chome+视频播放器vlc+图像编辑器GIMP Image Editor安装+视频录制软件RcordMyDesktop安 ...

  7. 第一站:CLion安装教程与环境配置

    原文来自:http://www.sunmey.cn/thread-129-1-1.html 本人:找了很久才找到的CLion安装教程与环境配置,这里分享给大家~ 这里要说明的一点是CLion是要钱的, ...

  8. python中在ubuntu中安装虚拟环境及环境配置

    python中在ubuntu中安装虚拟环境及环境配置 1.升级python包管理工具pip pip install --upgrade pip 备注:当你想升级一个包的时候 `pip install ...

  9. 视频+图文教程 | Java之安装JDK与环境配置

    演示所用软件JDK 8与Eclipse(Java开发工具)软件下载链接: 链接:https://pan.baidu.com/s/1Vg9ulrQH8WlGRAE89Y02UA提取码:swwl 视频介绍 ...

  10. Hive在集群环境配置

    本文转载自:https://blog.csdn.net/hanjin7278/article/details/53035739 一.简介 hive是基于Hadoop的一个数据仓库工具,可以将结构化的数 ...

随机推荐

  1. Math.random()

    Math.random() 日期时间函数(需要用变量调用):var b = new Date(); //获取当前时间b.getTime() //获取时间戳b.getFullYear() //获取年份b ...

  2. vagrant 1.8.6 安装过程及总结遇到的坑

    下面先总结遇到的问题,这些问题如果你也遇到,可能需要搜索很多次才能找到原因. 如果想看安装过程,可以先直接跳到后面第二部分部分. 1 问题汇总: 1.1 vagrant版本过高问题. vagrant ...

  3. 日期格式 CST

    从es 取出来一个date 字段, 结果竟然是 2016-10-10T10:48:58.000Z 这样的字符串, 这个是什么格式啊??? CST ? 只能自己转换了! 通过"yyyy-MM- ...

  4. 初学者--bootstrap(六)组件中的字体图标----在路上(9)

    组件---字体图标 无数可复用的组件,包括字体图标.下拉菜单.导航.警告框.弹出框等更多功能. 1.如何使用:        出于性能的考虑,所有图标都需要一个基类和对应每个图标的类.把下面的代码放在 ...

  5. vue源码解析阅读列表

    https://zhuanlan.zhihu.com/p/24435564 开发vue(或类似的MVVM框架)的过程中,需要面对的主要问题有哪些? 剖析vue实现原理,自己动手实现mvvm 官网介绍

  6. c#编程基础之字符串基础

    1.C#中单个的字符串用单引号包含就是char类型,('a'),单引号中放且只能放一个字符 2.单个字符也可以表示为字符串,还可以有长度为0的字符串. 3.使用s.Length属性来获得字符串中的字符 ...

  7. golang 使用 iota

    iota是golang语言的常量计数器,只能在常量的表达式中使用. iota在const关键字出现时将被重置为0(const内部的第一行之前),const中每新增一行常量声明将使iota计数一次(io ...

  8. Elasticsearch的CRUD:REST与Java API

    CRUD(Create, Retrieve, Update, Delete)是数据库系统的四种基本操作,分别表示创建.查询.更改.删除,俗称"增删改查".Elasticsearch ...

  9. C# 3.0新语言特性和改进(一)

    引言 关于C#3.0的特性,园子里已经有了一大把,可能大家都很熟悉了,虽然本人开发中使用过,但自己还是需要记录一下,总结一下.同时也是后面写Linq知识的基础.希望有兴趣的朋友,可以看看. C# 3. ...

  10. 1、Python基本概念

    1.数 python中有4种类型的数--整数.长整数.浮点数和复数 2.字符串 单引号.双引号或者三引号包含的字符序列,如: 'char' #单引号 "char" #双引号 ''' ...