数据分析引擎:Hive

数据分析引擎:Hive(2.3,在2.2.0版本以后是没有hwi,没有网页访问页面)

1、为什么需要数据分析引擎?什么是数据分析引擎?

(*) 不懂Java和Scala语言,如何进行大数据的分析?

(*) 懂SQL语言, select **** from ****

2、常见数据分析引擎:Hive、Pig、Imapla

3、Hive是基于Hadoop之上的一个数据仓库

Hive HDFS

表 ---------> 目录

数据 ---------> 文件

分区 ---------> 目录

4、Hive是一个翻译器,把SQL语句 ----> MapReduce程序

Hive支持的SQL,是SQL92的子集

需启动 hiveserver2 & 才能使用java api访问

三、Apache Hive的体系结构

 

 

root权限问题

解决方法

Hive的安装和配置

1、安装模式:嵌入模式(本地模式)和 远程模式 ----> 元信息如何存储

Hive的核心配置文件: conf/hive-site.xml

 

解压:tar -zxvf apache-hive-2.3.0-bin.tar.gz -C ~/training/

设置环境变量:vi ~/.bash_profile

export HIVE_HOME=/root/training/apache-hive-2.3.0-bin

export PATH=$PATH:$HIVE_HOME/bin

 

(2)在目录$HIVE_HOME/conf/下,

执行命令

mv hive-default.xml.template hive-site.xml 重命名

在目录$HIVE_HOME/conf/下,执行命令

mv hive-env.sh.template hive-env.sh 重命名

 

(3)修改hadoop的配置文件hadoop-env.sh,修改内容如下:

export HADOOP_CLASSPATH=.:$CLASSPATH:$HADOOP_CLASSPATH:$HADOOP_HOME/bin

(4)在目录$HIVE_HOME/bin下面,修改文件

vi bin/hive-config.sh,增加以下内容:

export JAVA_HOME=/root/training/jdk1.8.0_144

export HIVE_HOME=/root/training/apache-hive-2.3.0-bin

export HADOOP_HOME=/root/training/hadoop-2.7.3

2、嵌入模式(本地模式)

(*)使用Hive自带的Derby数据库作为元信息的存储数据库

(*)只能支持一个连接

hive-site.xml

<?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:derby:;databaseName=metastore_db;create=true</value>

</property>

<property>

<name>javax.jdo.option.ConnectionDriverName</name>

<value>com.mysql.jdbc.Driver</value>

</property>

<property>

<name>javax.jdo.option.ConnectionUserName</name>

<value>hiveowner</value>

</property>

<property>

<name>javax.jdo.option.ConnectionPassword</name>

<value>Welcome_1</value>

</property>

</configuration>

 

MySQL数据库的配置:

创建一个新的数据库:create database hive;

创建一个新的用户:

create user 'hiveowner'@'%' identified by 'Welcome_1';

给该用户授权

grant all on hive.* TO 'hiveowner'@'%';

grant all on hive.* TO 'hiveowner'@'localhost' identified by 'Welcome_1';

flush privileges;

初始化MetaStore ----> 需要把MySQL连接的jar包放到Hive/lib目录下

schematool -dbType mysql -initSchema

 

启动命令 hive

如果没有配置将hive-default.xml改名成hive-site.xml 运行成功后会在conf下产生 metastore_db这个文件会影响以后的第二次初始化,这就会报异常

 

需要启动 server

启动命令 hiveserver2 &

信息:Hive-on-MR is deprecated in Hive 2 and may not be available in the future versions. Consider using a different execution engine (i.e. spark, tez) or using Hive 1.X releases.

 

 

HBase上的MapReduce: 单词计数 WordCount

1、创建数据表

create 'word','content'

put 'word','1','content:info','I love Beijing'

put 'word','2','content:info','I love China'

put 'word','3','content:info','Beijing is the capital of China'

2、创建结果表

create 'stat','content'

3、依赖的jar包

(*)HBase的jar

(*)MapReduce的jar

 

基于hadoop的 hive 数据仓库,必须启动hadoop ,问题解决 hdfs://hadoop01:50070/tmp/hive

或需添加 此配置到hive-site.xml

<property>

<name>hive.metastore.schema.verification</name>

<value>false</value>

</property>

 

<property>

<name>hive.in.test</name>

<value>true</value>

</property>

 

2.3.0没有 hwi,配置了也没用,无法启动hwi

http://apache.fayea.com/hive/hive-1.2.2/

<property>

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

<value>172.18.58.116</value>

<description>listen address.(监听的地址</description>

</property>

<property>

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

<value>9999</value>

<description>listen port...(监听的端口)</description>

</property>

<property>

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

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

<description>HWI服务运行的WAR包路径 </description>

</property>

  • 启动

进入$HIVE_HOME/bin/

运行:hive –service hwi >> /tmp/hive-hwi.log 2>&1 &

HWI服务的日志被记录在tmp/hive-hwi.log中。

查看该日志文件:

日志中提示 Started SocketConnector@172.16.213.12:9999 ,说明hwi服务正常启动。

15.2 使用HWI

  • 用户认证信息

使用浏览器打开:http://172.16.213.12:9999/hwi/

首先会提示填入用户的信息,即用户名和用户组,填入之后点击Submit,提示认证完成。

进入HWI web页面

 

查看数据库中的表:

 

 

单击Create Session,并输入任务名称(自定义)

 

 

输入相关信息

 

Result File:结果输出文件

 

Error File:错误输出文件(可不填)

 

Query:需要执行的语句,一些需要设置的参数也在这里面进行

 

Start Query:选择Yes,默认是No则为不执行,只保存写入的信息

 

注:结果输出文件事先不存在,则为创建;如果存在则会覆盖

 

 

总的来说,HWI支持web方式查询/操作,但是执行过程没有提示。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值