大数据管理与分析 第六章 Hive和数据仓库

数据仓库和OLAP

  • 定义:数据仓库是一个面向主题的、集成的、时变的、非易失性的数据集合,用于支持管理决策过程。
    面向主题
  • 数据表围绕主题组织
  • 面向决策者,围绕数据建模和分析,而不是日常的业务操作或数据处理
  • 围绕特定的主题,提供简洁的数据视图

集成的

  • 继承多个异质数据源来构建:关系数据库,文件,在线交易记录
  • 应用数据清洗和数据集成技术:命名规范、属性量纲

时变的(反应历史变化)

  • 数据仓库的时间跨度比操作型数据库长得多,操作性数据库关注当前数据,数据仓库从历史角度提供信息
  • 数据仓库中每个关键结构,显示或隐式包含时间元素

非易失的

  • 从操作环境转换来的物理独立的数据存储
  • 数据的操作更新不会出现在数据仓库环境中

数据仓库是独立的

OLTP :Online Transaction Processing 联机事务处理 DBMS
OLAP:Online Analytical Processing 联机分析处理 仓库
两个系统都需要高性能

  • DBMS :存取、索引、并发控制、恢复等
  • 仓库:复杂OLAP查询,多维度视图,整合等

功能不同,所含数据不同

  • 数据完整:决策支持需要历史数据,二操作性数据库往往不包含
  • 数据整合:数据仓库要整合异质数据源的数据
  • 数据质量:不同数据源使用不同的数据表示、代码和格式,需要协调

数据仓库多层架构

在这里插入图片描述

  • 数据立方体:一种多维数据模型,允许以多维对数据建模和观察。可以仅从多为操作,切片、变换等

Hive基本工作原理

使用hadoop进行数据分析

  • 编程接口对数据分析人员不友好
  • hadooop使用mapreduce 并行化的方式进行并行处理

Hive

  • Hive 可以认为是一个数据仓科,包括数据的存储及查询
  • Hive是Hadoop生态的一个工具,提供一种统一的查询语句,支撑链接、分组、聚类等类SQL语言,可以查询hadoop中HDFS或其他hadoop继承文件系统中的数据。
  • Hive建立在Hadoop组成部分上,依赖于HDFS进行数据存储,依赖于MapReduce完成查询,将类SQL铲鲟转换成MapReduce操作
  • Hive不支持记录级别的更新、插入或者删除
  • Hive哦主要针对OLAP应用
  • HBase针对OLTP应用
  • Hive的设计目标是为了查询分析结构化的海量数据

Hive的组成模块

  • HiveQL:Hive的查询语言,与SQL类似。提供了查询语言与用户的接口,shell接口,Web接口和JDBC接口。
  • Driver:执行驱动程序,用于将各个部分形成一个有机的执行系统,包括会话处理,查询获取以及执行驱动
  • Compiler:Hive需要一个编译器,将HiveQL编译成中间表示,包括对HiveQL语言分析,执行计划的生成以及优化等工作。
  • 执行引擎:在Driver的驱动下,具体完成执行操作,包括Mapreduce操作,HDFS操作,或者元数据操作。
  • 元数据存储层:用于存储元数据:存储操作的数据对象的格式信息,在HDFS中存储位置信息,以及其他用于格式转换的信息
  • Hadoop数据存储及处理平台:从Hive引擎接收指令,并最终通过HDFS、HBase,配合MapReduce实现数据处理

Hive的数据模型

  • 表:表分两部分,真实数据和元数据,真实数据存放在HDFS中,元数据存放在关系数据库中
  • 外部表:数据不在Hive的warehouse目录内,需要到目录以外位置访问数据
  • 分区:partition 数据表可以按照一定的规则进行划分
  • 桶 Buckets:数据存储的桶 在一定范围内的数据按照Hash的方式进行划分(这对于数据的抽样以及对于join的优化很有意义)

数据的物理分布

  • Hive在HDFS中有固定文职,通常在HDFS如下目录中: /home/hive/warehouse
  • 每个数据表被存放在 warehouse 的子目录中
  • 数据可能使用任意一种形式存储

在这里插入图片描述

  • 客户端可以通过 JDBC ODBC Thrift连接到服务去访问Hive提供的功能。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值