理解数据仓库建模.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
今天跟着我来学学数据仓库的基础知识,希望你结合案例可以把它吃透。 一、数据仓库建模的意义 如果把数据看作图书馆里的书,我们希望看到它们在书架上分门别类地放置;如果 把数据看作城市的建筑,我们希望城市规划布局合理;如果把数据看作电脑文件和 文件夹,我们希望按照自己的习惯有很好的文件夹组织方式,而不是糟糕混乱的桌 面,经常为找一个文件而不知所措。 数据模型就是数据组织和存储方法,它强调从业务、数据存取和使用角度合理存储 数据。Linux 的创始人 Torvalds 有一段关于“什么才是优秀程序员”的话:“烂 程序员关心的是代码,好程序员关心的是数据结构和它们之间的关系”,最能够说 明数据模型的重要性。 只有数据模型将数据有序的组织和存储起来之后,大数据才能得到高性能、低成本、 高效率、高质量的使用。 性能:帮助我们快速查询所需要的数据,减少数据的 I/O 吞吐,提高使用数据的效 率,如宽表。 成本:极大地减少不必要的数据冗余,也能实现计算结果复用,极大地降低存储和 计算成本。 效率:在业务或系统发生变化时,可以保持稳定或很容易扩展,提高数据稳定性和 连续性。 质量:良好的数据模型能改善数据统计口径的不一致性,减少数据计算错误的可能 性。数据模型能够促进业务与技术进行有效沟通,形成对主要业务定义和术语的统 一认识,具有跨部门、中性的特征,可以表达和涵盖所有的业务。 大数据系统需要数据模型方法来帮助更好地组织和存储数据,以便在性能、成本、 效率和质量之间取得最佳平衡! 下图是个示例,通过统一数据模型,屏蔽数据源变化对业务的影响,保证业务的稳 定,表述了数据仓库模型的一种价值: 二、数据仓库分层的设计 为了实现以上的目的,数据仓库一般要进行分层的设计,其能带来五大好处: 清晰数据结构:每一个数据分层都有它的作用域,这样我们在使用表的时候能更方 便地定位和理解。 数据血缘追踪:能够快速准确地定位到问题,并清楚它的危害范围。 减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复 计算。 把复杂问题简单化:将复杂的任务分解成多个步骤来完成,每一层只处理单一的步 骤,比较简单和容易理解。当数据出现问题之后,不用修复所有的数据,只需要从 有问题的步骤开始修复。 屏蔽原始数据的异常:不必改一次业务就需要重新接入数据。 以下是我们的一种分层设计方法,数据缓冲区(ODS)的数据结构与源系统完全一 致。基础数据模型(DWD)和融合数据模型(DWI 与 DWA)是大数据平台重点建设的数 据模型。应用层模型由各应用按需自行建设,其中基础数据模型一般采用 ER 模型, 融合数据模型采用维度建模思路。 三、两种经典的数据仓库建模方法 前面的分层设计中你会发现有两种设计方法,关系建模和维度建模,下面分别简单 介绍其特点和适用场景。 1、维度建模 (1)定义 维度模型是数据仓库领域另一位大师 Ralph Kimball 所倡导的。维度建模以分析 决策的需求出发构建模型,构建的数据模型为分析需求服务,因此它重点解决用户 如何更快速完成分析需求,同时还有较好的大规模复杂查询的响应性能,更直接面 向业务。典型的代表是我们比较熟知的星形模型。 星型模型 维度退化 星型模型由一个事实表和一组维表组成。每个维表都有一个维作为主键,所有这些 维的主键组合成事实表的主键。强调的是对维度进行预处理,将多个维度集合到一 个事实表,形成一个宽表。 这也是我们在使用 hive 时,经常会看到一些大宽表的原因,大宽表一般都是事实 表,包含了维度关联的主键和一些度量信息,而维度表则是事实表里面维度的具体 信息,使用时候一般通过 join 来组合数据,相对来说对 OLAP 的分析比较方便。 (2)建模方法 通常需要选择某个业务过程,然后围绕该过程建立模型,其一般采用自底向上的方 法,从明确关键业务过程开始,再到明确粒度,再到明确维度,最后明确事实,非 常简单易懂。 以下是阿里的 OneData 的建模工作流,可以参考。 (3)优缺点 优点:技术要求不高,快速上手,敏捷迭代,快速交付;更快速完成分析需求,较 好的大规模复杂查询的响应性能 缺点:维度表的冗余会较多,视野狭窄 2、关系建模 (1)定义 是数据仓库之父 Inmon 推崇的、从全企业的高度设计一个 3NF 模型的方法,用实体 加关系描述的数据模型描述企业业务架构,在范式理论上符合 3NF,站在企业角度 面向主题的抽象,而不是针对某个具体业务流程的实体对象关系抽象。 它更多是面向数据的整合和一致性治理,正如 Inmon 所希望达到的“single version of the truth”。 当有一个或多个维表没有直接连接到事实表上,而是通过其他维表连接到事实表上 时,其图解就像多个雪花连接在一起,故称雪花模型。 雪花

文档评论(0)

ccccccxx + 关注
官方认证
文档贡献者

该用户很懒,什么也没介绍

认证主体临沂冉通信息技术有限公司
IP属地山东
统一社会信用代码/组织机构代码
91371300MA9576790T

1亿VIP精品文档

相关文档