Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15123
  • 博文数量: 9
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 100
  • 用 户 组: 普通用户
  • 注册时间: 2015-05-08 14:16
文章分类
文章存档

2015年(9)

我的朋友

分类: HADOOP

2015-05-11 14:35:12

Hive快速入门

一、      什么是Hive

Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。同时,这个语言也允许熟悉 MapReduce  开发者的开发自定义的 mapper  reducer  来处理内建的 mapper reducer  无法完成的复杂的分析工作。

二、      为什么使用Hive

学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。

三、      Hive 系统架构

用户接口主要有三个:CLIJDBC/ODBCWebUI

1.     CLI,即Shell命令行

2.     JDBC/ODBC Hive Java,与使用传统数据库JDBC的方式类似

3.     WebGUI是通过浏览器访问 Hive

MetastoreHive的元数据)

1.     元数据包含了Hive包表的表名、字段分区属性等表的属性信息

2.     默认使用Derby数据库作为默认的元数据仓库(嵌入式,只支持单session回话)

 

四、      Hive与传统数据的对比

Hive

RDBMS

查询语言

HQL

SQL

数据存储

HDFS

Raw Device or Local FS

执行

MapReduce

Excutor

执行延迟

处理数据规模

索引

0.8版本后加入位图索引

有复杂的索引

 

五、      Hivehadoop 的调用关系


六、      Hive安装

1.     下载hive源文件

2.     解压hive文件

3.     进入$HIVE_HOME/conf/修改文件

a)     cp  hive-env.sh.template  hive-env.sh

b)     cp  hive-default.xml.template  hive-site.xml

4.     修改$HIVE_HOME/binhive-env.sh,增加以下三行

a)     export JAVA_HOME=/usr/local/jdk1.7.0_45

b)     export HIVE_HOME=/usr/local/hive-0.14.0

c)     export HADOOP_HOME=/usr/local/hadoop-2.6.0

5.     伪分布模式使用默认的Derby就可以直接启动Hive控制台了,但一般都会修改为MySQL

修改$HIVE_HOME/conf/hive-site.xml

      javax.jdo.option.ConnectionURL

      jdbc:mysql://192.168.1.100:3306/crxy_job?

               createDatabaseIfNotExist=true

      javax.jdo.option.ConnectionDriverName

      com.mysql.jdbc.Driver

      javax.jdo.option.ConnectionUserName

      root

      javax.jdo.option.ConnectionPassword

      admin

6.     MySQL的驱动包jar文件存放在HIVE_HOME/lib

7.     启动Hive,现在就可以执行Sql语句创建表了!

 

 更多精彩内容请关注:
关注超人学院微信:BJ-CRXY


阅读(1011) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~