Skip to content

Latest commit

 

History

History
81 lines (59 loc) · 5.23 KB

3.数据建模.md

File metadata and controls

81 lines (59 loc) · 5.23 KB
1、什么是数据建模?
数据建模指的是对现实世界各类数据的抽象组织,确定数据库需管辖的范围、数据的组织形式等直至转化成现实的数据库。 
2、为什么要进行数据建模?
在如何构建数据仓库方面,这两种截然不同的思想流派:Inmon 方法和 Kimball 方法。他们的关键区别在于数据结构如何建模、加载和存储在数据仓库中。
这种差异会影响数据仓库的交付时间以及适应 ETL 设计未来变化的能力。
3、Inmon和Kimball架构?
Inmon提出的集线器的自上而下(EDW-DM)的数据仓库架构。操作型或事务型系统的数据源,通过ETL抽取转换和加载到数据仓库的ODS层,
然后通过ODS的数据建设原子数据的数据仓库EDW,EDW不是多维格式的,不方便上层应用做数据分析,
所以需要通过汇总建设成多维格式的数据集市层。优势:易于维护,高度集成;劣势:结构死板,部署周期较长

Inmon表示应该围绕主题来组织数据仓库中的数据,每个主题区域仅仅包含该主题相关的信息,数据仓库应该一次增加一个主题。

Kimball提出的总线式的自下而上(DM-DW)的数据仓库架构。同样的,操作型或事务型系统的数据源,通过ETL抽取转换和加载到数据仓库的ODS层,
然后通过ODS的数据,利用维度建模方法建设一致维度的数据集市。通过一致性维度可以将数据集市联系在一起,由所有的数据集市组成数据仓库。
优势:构建迅速,最快的看到投资回报率,敏捷灵活;劣势:作为企业资源不太好维护,结构复杂,数据集市集成困难。

Kimball表示数据仓库仅仅是构成它的数据集市的联合,通过一系列维数相同的数据集市递增得构建数据仓库。每个数据集市将联合多个数据源来满足特定的业务需求。
通过一致的维度,能够看到不同数据集市中的信息。
4、数据建模几种方式?
范式建模、维度建模、Data Valut、Archor Modeling

本质是模型打散程度的区别。
1、维度建模为了更好的支撑分析、降低查询人员的使用难度,往往会将数据进行比较集中的组织和管理。此情况的极限是只有一张表。
2、3NF、Data Valut、Archor Modeling对数据的管理规范越来越严格,去冗余程度越来越高。
3、Data Valut模型不同于关系模型和维度模型,
从形式上看,Data Valut模型存储来自多个操作型系统的完整的历史数据并不做任何清洗、转换,即使各业务系统中的数据质量层次不齐。
从本质上看,Data Valut数据模型是一种3NF和维度建模相结合的建模方法,主要适用于企业级数据仓库或数据中台的建模。
5、范式建模与维度建模区别?
1、范式建模:Inmon提出的集线器的自上而下(EDW-DM)的数据仓库架构。

范式(NF)
一张数据表的表结构所符合的某种设计标准的级别。
第一范式(1NF):符合1NF的关系中的每个属性都不可再分。
第二范式(2NF):消除了非主属性对码的部分函数依赖。
第三范式(3NF):3NF在2NF的基础之上,消除了非主属性对于码的传递函数依赖。

一个符合第三范式的关系必须具有一下三个条件:
    每个属性的值唯一,不具有多义性;
    每个非主属性必须完全依赖于整个主键,而非主键的一部分;
    每个非主属性不能依赖于其它关系中的属性;       

2、维度建模:Kimball提出的总线式的自下而上(DM-DW)的数据仓库架构。
一般用到的模型有:
    星型模型、雪花模型、星座模型

一般dw层(明细层,数据粒度与ods层一致)会采用范式建模。dm层会采用维度建模。
6、数据建模数据分层?
经典的4层分层:
ods:operation data store原始数据层,数据保持原貌不做处理。
dwd:data warehouse detail明细数据层,结构和粒度与原始表保持一致,对ods层数据进行清洗(去除空值,脏数据)。
(dwm:Data Warehouse Middle中间层)。
dws:data warehouse service数据汇总层,数据轻度汇总。
ads:application data store 数据应用层,为各种统计报表提供数据。
7、实时数仓和离线数仓区别?同一业务线数据建模分层必须一样么?
同一业务线分层最好一致。离线与实时层级保持一致。
8、如何创建数据模型?
数据仓库建模阶段划分:业务建模、概念建模、逻辑建模、物理建模
9、数据仓库建模规范?
10、什么是数据湖?
数据湖是一个集中式存储库,允许你以任意规模存储所有结构化和非结构化数据。
11、数据仓库数据回溯问题?