点一下关注吧!!!非常感谢!!持续更新!!!
目前已经更新到了:
- Hadoop(已更完)
- HDFS(已更完)
- MapReduce(已更完)
- Hive(已更完)
- Flume(已更完)
- Sqoop(已更完)
- Zookeeper(已更完)
- HBase(已更完)
- Redis (已更完)
- Kafka(已更完)
- Spark(已更完)
- Flink(已更完)
- ClickHouse(已更完)
- Kudu(已更完)
- Druid(已更完)
- Kylin(已更完)
- Elasticsearch(已更完)
- DataX(已更完)
- Tez(已更完)
- 数据挖掘(已更完)
- Prometheus(已更完)
- Grafana(已更完)
- 离线数仓(正在更新…)
章节内容
上节我们完成了如下的内容:
- 数据集市 建模方法
- 数仓分层 ODS DW ADS
数仓模型
事实表与维度表
在数据仓库中,保存度量值的详细值或事实的表称为事实表。
事实数据通常包含大量的行,事实数据表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据,事实表的粒度决定了数据仓库中数据的详细程度。
常见事实表
常见的事实表:订单事实表
事实表的特点:表多(各种各样的事实表),数据量大
事实表根据数据的粒度可以分为:
- 事务事实表
- 周期快照事实表
- 累积快照事实表
常见维度表
维度表(维表)可以看做是用来分析数据的角度,维度表中包含事实数据表在中事实记录的特性。有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息。
常见维度表:
- 时间维度
- 地域维度
- 商品维度
简单小结
- 事实表是关注的内容(如:销售额、销售量)
- 维度表是观察事务的角度
事实表分类
事务事实表
事务事实表记录的事务层面的事实,保存的是最原子的数据,也称为“原子事实表”。事务事实表中的数据在事务事件发生后产生,数据的粒度通常是每个事务一条记录。
一旦事务被提交,事实表数据被插入,数据就不再进行更改,其更新方式为增量更新。
事务事实表的日期维度记录的是事务发生的日期,它记录的事实是事务活动的内容。如:订单表。通过事务事实表,还可以建立聚集事实表,为用户提供高性能的分析。
周期快照事实表
周期快照事实表以规律性的、可预见的时间间隔来记录事实,时间间隔如每天、每月、每年等等。典型的例子如销售日快照表、库存日快照表等。它统计的是间隔周期内的度量统计,如历史至今、自然年至今、季度至今等等。
累积快照事实表
累积快照事实表和周期快照事实表有些相似之处,它们存储的都是事务数据的快照信息。但是它们之间也有着不同,周期快照事实记录的确定的周期的数据,而积累快照事实记录的不确定的周期的数据。
累积快照事实表代表的是完全覆盖一个事务或产品的生命周期的时间跨度,它通常具有多个日期字段,用来记录整个生命周期中的关键时间点。另外,它还会有一个用于指示最后更新日期的附加日期字段。由于事实表中许多日期在首次加载时是不知道的,所以必须使用代理关键字来处理未定义的日期,而且这类事实表在数据加载完后,是可以对它进行更新的,来补充随后知道的日期信息。
如:订货日期、预定交货日期、实际发货日期、实际交货日期、数量、金额、运费
雪花模型
雪花模型是星型模型的变种,维表是规范化的,模型类似雪花的形状。
特点:雪花结构去除了数据冗余。
星型模型存在数据冗余,所以在查询统计时只需要做少量的表连接,查询效率高。星型模型不考虑维表正规化的因素,设计、实现容易。
在数据冗余可接受的情况下,实际上使用星型模型比较多。
雪花模型的结构
事实表:
雪花模型的核心部分还是事实表,事实表通常存储了业务事件的度量数据,如销售额、订单数量等。
事实表包含指向维度表的外键。
维度表:
在雪花模型中,维度表进行规范化,意味着同一维度中的不同属性会拆分成多个子表。
例如,“客户”维度可能包含多个层级的属性:客户的基本信息可能存储在一个表中,而客户的地址信息可能存储在另一个单独的表中。这种方式使得维度表的数据冗余减少,提高了数据一致性。
子维度表:
雪花模型的一个特点是维度表的“分层”结构。例如,地理维度可能会被拆分成“国家”、“省/州”、“城市”等多个子维度表,每个表之间通过外键关联。
雪花模型的优缺点
优点:
- 数据冗余较低:由于维度表被规范化,雪花模型减少了数据的冗余。每个属性只会在相关的表中出现一次,这对于数据更新、删除和维护时,可以减少出现数据不一致的风险。
- 存储空间节省:由于规范化结构减少了重复数据,雪花模型相对于星型模型来说在存储上可以节省空间,特别是在处理大规模数据时,优势更加明显。
- 数据一致性较好:由于每个属性只存在于某个特定的维度表中,数据的一致性和完整性相对更容易保持。
事实星座
数据仓库由多个主题构成,包含多个事实表,而维表是公共的,可以共享,这种模式可以看做星型模式的汇集。因而称作星系模式或者事实星座模式。
特点:公用维表
元数据
元数据(Metadata)是关于数据的数据,元数据打通了源数据、数据仓库、数据应用,记录了数据从产生到消费的全过程。元数据就相当于所有数据的地图,有了这张地图就能知道数据仓库中:
- 有哪些数据
- 数据分布的情况
- 数据类型
- 数据之间有什么关系
- 哪些数据经常被使用,哪些数据很少有人光顾
在大数据平台中,元数据贯穿大数据平台数据流动的全过程,主要包括数据源元数据、数据加工处理过程元数据、数据主题专题库元数据、服务层元数据、应用层元数据等。
业务通常把元数据分为以下类型:
- 技术元数据:库表结构、数据模型、ETL程序、SQL程序等
- 业务元数据:业务指标、业务代码、业务术语等
- 管理元数据:数据所有者、数据质量、数据安全等
版权归原作者 武子康 所有, 如有侵权,请联系我们删除。