Hive

Hive产生背景:

  mapreduce编程的不便性

  HDFS上的文件缺少Schema

Hive

Facebook开源的,最初用于海量结构化的日志数据统计问题

构建在hadoop之上的数据仓库

hive定义了一种类SQL查询语言:HQL(类似SQL但不完全相同)

通常用于离线数据处理(采用mapreduce)

底层支持多种不同的执行引擎:

Hive on Mapreduce

Hive on Tez

Hive on Spark

支持多种不同的压缩格式、存储格式以及自定义的函数

压缩:GZIP LZO snappy BZIP2..

存储:TextFile、SequenceFile、RCFile、ORC、Parquet

UDF:自定义函数

官网:hive.apache.org

为什么要使用Hive

简单、易上手(提供类似SQL查询语言HQL)

为超大数据集设计的计算/存储扩展能力(MR计算、HDFS存储)

统一的元数据管理(可与presto/Impala/SparkSQL等共享数据)

------一句话总结:hive使用SQL完成大数据相关统计分析操作

Hive环境搭建

1)hive下载hive-1.1.0-cdh5.7.0

2)解压

3)配置

官网

系统环境变量(~/.bash_profile)

事先安装一个MySQL,

hive-site.xml

四个属性配置

4)拷贝MySQL驱动到$HIVE_HOME/lib/

5)启动hive:HIVE_HOME/bin/hive

hive基本使用

创建表

使用hive完成Wordcount统计(对比mapreduce实现的易用性)

案例:员工表和部门表操作

hive SQL提交执行以后会生成mr作业,并在yarn上运行

原文地址:https://www.cnblogs.com/liuffblog/p/12910661.html