一,什么是数据仓库?
数据仓库与数据库的对比
1.hive和关系数据库存储文件的系统不同,配置单元使用的是的hadoop的HDFS(hadoop的的分布式文件系统)
关系数据库则是服务器本地的文件系统;
2.hive使用的计算模型是MapReduce的,而关系数据库则是自己设计的计算模型;
3.关系数据库都是为实时查询的业务进行设计的,而分群则是为海量数据做数据挖掘设计的,实时性很差;实时性的区别导致分群的应用场景和关系数据库有很大的不同;
4.Hive很容易扩展自己的存储能力和计算能力,这个是继承的hadoop的,而关系数据库在这个方面要比数据库差很多
二,数据仓库构成?
1.分层架构图
简化版
2.数据仓库分层概念?
ODS层:数据源中的数据经过抽取,清洗,传输(ETL)放入本层。
注意:这一层的数据不等同与原始数据。
业务层到ODS层用sqoop来抽取
ODS到DW用蜂巢和火花
DM数据集市(宽表)
hive的数据存储在HDFS中,Hadoop的分布式文件系统
3.为什么要对数据仓库分层?
用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因此数据仓库会存在大量冗余的数据。
三,蜂房与Hadoop的关系?
1.hive是什么?用途?
蜂房是基于的Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能HiveQL,HQL
四,需注意的点?
1.Hive的数据存储在HDFS中,大部分的查询,计算由MapReduce的完成
(包含*的查询,比如选择*来自tbl不会生成MapRedcue任务)