数据仓库

您所在的位置:网站首页 数据仓库十大主题模型有哪些特点和作用 数据仓库

数据仓库

2024-07-12 03:15| 来源: 网络整理| 查看: 265

文章目录 数据仓库建模方法一,ER模型二,维度模型数据仓库分层事实表与维度表星型模型雪花模型事实星座元数据

数据仓库建模方法

数据模型就是数据组织和存储方法,它强调从业务、数据存取和使用角度合理存储数据。适合业务和基础数据存储环境的模型的优点如下:

性能:良好的数据模型能帮助我们快速查询所需要的数据,减少数据的I/O吞吐成本:良好的数据模型能极大地减少不必要的数据冗余,也能实现计算结果复用,极大地降低大数据系统中的存储和计算成本效率:良好的数据模型能极大地改善用户使用数据的体验,提高使用数据的效率质量:良好的数据模型能改善数据统计口径的不一致性,减少数据计算错误的可能性

通常来说,数据系统需要数据模型方法来更好的组织和存储数据,用来再性能,成本,效率和质量之间取得最佳平衡。

一,ER模型 数据仓库之父Bill Inmon提出的建模方法是从全企业的高度设计一个3NF模型,用实体关系(Entity Relationship, ER)模型描述企业业务,在范式理论上符合3NF。数据仓库中的3NF与OLTP系统中的3NF 的区别在于,它是站在企业角度面向主题的抽象,而不是针对某个具体业务流程的实体对象关系的抽象。数据仓库中的3NF具有以下几个特点: 需要全面了解整个企业业务和数据实施周期非常长对建模人员的能力要求非常高 釆用ER模型建设数据仓库模型的出发点是整合数据,将各个系统中的数据以整个企业角度按主题进行相似性组合和合并,并进行一致性处理,为数据分析决策服务,但是并不能直接用于分析决策。ER模型建模步骤分为三个阶段: 高层模型:一个高度抽象的模型,描述主要的主题以及主题间的关系,用于描述企业的业务总体概况中层模型:在高层模型的基础上,细化主题的数据项物理模型(也叫底层模型):在中层模型的基础上,考虑物理存储,同时基于性能和平台特点进行物理属性的设计,也可能做一 些表的合并、分区的设计等 二,维度模型 维度模型是数据仓库领域的Ralph Kimball大师所倡导的,他的《数据仓库工具箱》是数据仓库工程领域最流行的数据仓库建模经典维度建模从分析决策的需求出发构建模型,为分析需求服务,重点关注用户如何更快速地完成需求分析,同时具有较好的大规模复杂查询的响应性能。维度模型的典型代表是星型模型,以及在一些特殊场景下使用的雪花模型。维度模型设计分为以下几个步骤: 选择需要进行分析决策的业务过程。业务过程可以是:单个业务事件,比如交易的支付、退款等,某个事件的状态,比如当前的账户余额等,一系列相关业务事件组成的业务流程选择数据的粒度。在事件分析中,我们要预判所有分析需要细分的程度,从而决定选择的粒度识别维表。选择好粒度之后,就需要基于此粒度设计维表,包括维度属性,用于分析时进行分组和筛选选择事实。确定分析需要衡量的指标

大多数企业实施数据仓库的经验说明:在不太成熟、快速变化的业务面前,构建ER模型的风险非常大,不太适合去构建ER模型。而维度建模对技术要求不高,快速上手,敏捷迭代,快速交付;更快速完成分析需求,较好的大规模复杂查询的响应性能。

数据仓库分层 数据仓库更多代表的是一种对数据的管理和使用的方式,它是一整套包括了数据建模、ETL(数据抽取、转换、加载)、作用调度等在内的完整的理论体系流程。数据仓库在构建过程中通常都需要进行分层处理。业务不同,分层的技术处理手段也不同。分层的主要原因是在管理数据的时候,能对数据有一个更加清晰的掌控,主要原因有: 清晰的数据结构:每一个数据分层都有它的作用域,在使用表的时候能更方便地定位和理解将复杂的问题简单化:将一个复杂的任务分解成多个步骤来完成,每一层只处理单一的问题,比较简单和容易理解。而且便于维护数据的准确性,当数据出现问题之后,可以不用修复所有的数据,只需要从有问题的地方开始修复。减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算。屏蔽原始数据的异常:屏蔽业务的影响,不必改一次业务就需要重新接入数据数据血缘的追踪:最终给业务呈现的是一个能直接使用业务表,但是它的来源很多,如果有一张来源表出问题了,借助血缘最终能够快速准确地定位到问题,并清楚它的危害范围。 数仓的常见分层一般为3层,分别为:数据操作层、数据仓库层和应用数据层(数据集市层)。也可以分为更多不同的层,只要能达到流程清晰、方便查数即可 在这里插入图片描述 ODS(Operation Data Store 数据准备区):数据仓库源头系统的数据表通常会原封不动的存储一份,这称为ODS层,也称为准备区。它们是后续数据仓库层加工数据的来源。 ODS层数据的主要来源包括: 业务数据库。可使用DataX、Sqoop等工具来抽取,每天定时抽取一次;在实时应用中,可用Canal监听MySQL的 Binlog,实时接入变更的数据;埋点日志。线上系统会打入各种日志,这些日志一般以文件的形式保存,可以用Flume 定时抽取;其他数据源。从第三方购买的数据、或是网络爬虫抓取的数据。

DW(Data Warehouse 数据仓库层):包含DWD、DWS、DIM层,由ODS层数据加工而成。主要完成数据加工与整合,建立一致性的维度,构建可复用的面向分析和统计的明细事实表,以及汇总公共粒度的指标。

DWD(Data Warehouse Detail 细节数据层),是业务层与数据仓库的隔离层。以业务过程作为建模驱动,基于每个具体的业务过程特点,构建细粒度的明细层事实表。可以结合企业的数据使用特点,将明细事实表的某些重要维度属性字段做适当冗余,也即宽表化处理;DWS(Data Warehouse Service 服务数据层),基于DWD的基础数据,整合汇总成分析某一个主题域的服务数据。以分析的主题为建模驱动,基于上层的应用和产品的指标需求,构建公共粒度的汇总指标事实表;公共维度层(DIM):基于维度建模理念思想,建立一致性维度;TMP层 :临时层,存放计算过程中临时产生的数据;

ADS(Application Data Store 应用数据层)。基于DW数据,整合汇总成主题域的服务数据,用于提供后续的业务查询等。

数据仓库层次的划分不是固定不变的,可以根据实际需求进行适当裁剪或者是添加。如果业务相对简单和独立,可以将DWD、DWS进行合并。

事实表与维度表

事实表

在数据仓库中,保存度量值的详细值或事实的表称为事实表。事实数据表通常包含大量的行。事实数据表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据。事实表的粒度决定了数据仓库中数据的详细程度。常见事实表:订单事实表事实表的特点:表多(各种各样的事实表);数据量大事实表根据数据的粒度可以分为:事务事实表、周期快照事实表、累计快照事实表

维度表

维度表(维表)可以看作是用来分析数据的角度,纬度表中包含事实数据表中事实记录的特性。有些特性提供描述性信息,有些特性指定如何汇总事实数据表数据,以便为分析者提供有用的信息。常见维度表:时间维度、地域维度、商品维度

总结:事实表是关注的内容(如:销售额、销售量),维表是观察事务的角度。

事实表可分为事务事实表,周期快照事实表,累积快照事实表

事务事实表

事务事实表记录的事务层面的事实,保存的是最原子的数据,也称“原子事实表”。事务事实表中的数据在事务事件发生后产生,数据的粒度通常是每个事务一条记录。一旦事务被提交,事实表数据被插入,数据就不再进行更改,其更新方式为增量更新。事务事实表的日期维度记录的是事务发生的日期,它记录的事实是事务活动的内容。用户可以通过事务事实表对事务行为进行特别详细的分析。如:订单表通过事务事实表,还可以建立聚集事实表,为用户提供高性能的分析。

周期快照事实表

周期快照事实表以具有规律性的、可预见的时间间隔来记录事实,时间间隔如每天、每月、每年等等。典型的例子如销售日快照表、库存日快照表等。周期快照事实表统计的是间隔周期内的度量统计,如历史至今、自然年至今、季度至今等等。周期快照事实表的粒度是每个时间段一条记录,通常比事务事实表的粒度要粗,是在事务事实表之上建立的聚集表。周期快照事实表的维度个数比事务事实表要少,但是记录的事实要比事务事实表多。如:商家日销售表(无论当天是否有销售发生,都记录一行)日期、商家名称、销售量、销售额

累积快照事实表

累积快照事实表和周期快照事实表有些相似之处,它们存储的都是事务数据的快照信息。但是周期快照事实表记录的确定的周期的数据,而累积快照事实表记录的不确定的周期的数据。累积快照事实表代表的是完全覆盖一个事务或产品的生命周期的时间跨度,它通常具有多个日期字段,用来记录整个生命周期中的关键时间点。除此之外,它还会有一个用于指示最后更新日期的附加日期字段。在事实表中许多日期在首次加载时是不知道的,所以必须使用代理关键字来处理未定义的日期,而且这类事实表在数据加载完后,是可以对它进行更新的,来补充随后知道的日期信息。如:订货日期、预定交货日期、实际发货日期、实际交货日期、数量、金额、运费。如:商家本周、本月、本年累计销售表 在这里插入图片描述 星型模型 星型模是一种多维的数据关系,它由一个事实表和一组维表组成;事实表在中心,周围围绕地连接着维表;事实表中包含了大量数据,没有数据冗余;维表是逆规范化的,包含一定的数据冗余;

在这里插入图片描述

雪花模型 雪花模式是星型模型的变种,维表是规范化的,模型类似雪花的形状;特点:雪花型结构去除了数据冗余。星型模型存在数据冗余,所以在查询统计时只需要做少量的表连接,查询效率高;星型模型不考虑维表正规化的因素,设计、实现容易;星型模型不考虑维表正规化的因素,设计、实现容易;

在这里插入图片描述

事实星座 数据仓库由多个主题构成,包含多个事实表,而维表是公共的,可以共享,这种模式可以看做星型模式的汇集,因而称作星系模式或者事实星座模式。事实星座特点:公用维表 在这里插入图片描述 元数据 元数据(Metadata)是关于数据的数据。元数据打通了源数据、数据仓库、数据应用,记录了数据从产生到消费的全过程。元数据贯穿大数据平台数据流动的全过程,主要包括数据源元数据、数据加工处理过程元数据、数据主题库专题库元数据、服务层元数据、应用层元数据等。在这里插入图片描述元数据可以分为以下类型: 技术元数据:库表结构、数据模型、ETL程序、SQL程序等业务元数据:业务指标、业务代码、业务术语等管理元数据:数据所有者、数据质量、数据安全等


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3