Hive
简介
Hive是基于 Hadoop 的一个【数据仓库工具】,可以将结构化的数据文件映射为一张hive数据库表,并提供简单的 sql 查询功能,可以将 hql 语句转换为 MapReduce 任务进行运行。
数据处理的分类
- 联机事务处理(OLTP)
- 传统业务逻辑的处理
- 联机分析处理(OLAP)
- 数据仓库系统的主要应用
Hive的应用
Hive是一款数据仓库工具
数据仓库
【数据仓库】英文名称为 Data Warehouse,可简写为 DW 或 DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制.
-
数据仓库是用来做查询分析的数据库,基本不用来做插入,修改,删除操作。
-
使用HQL语句转化为MapReduce任务,从而得到想要的数据
Hive架构原理
-
用户接口
- CLI命令行模式
- JDBC连接
- Web GUI
-
元数据存储在metastore中,一般以mysql等数据库为载体
-
Hive的数据存储在HDFS中
-
计算由MapReduce完成
HQL
Hive的查询语言,与SQL(结构化查询语言)类似
DDL数据定义语句
数据库增删改查语句
表的增删改查语句
DML数据操作语句
四种导入/插入语句
-
LOAD DATA [LOCAL] INPATH ‘filepath’ [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 …)]
-
INSERT OVERWRITE TABLE person2 [PARTITION(dt=‘2008-06-08’, country)] SELECT id,name, age From ppt;
-
FROM person t1 INSERT OVERWRITE TABLE person1 [PARTITION(dt=‘2008-06-08’, country)] SELECT