我是靠谱客的博主 细腻乐曲,最近开发中收集的这篇文章主要介绍数据仓库分层,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

数据仓库&数据集市

  • 数据仓库
    数据仓库,英文名称为Data Warehouse,可简写为DW或DWH。数据仓库,是为企业所有级别的决策制定过程,提供所有类型数据支持的战略集合。它是单个数据存储,出于分析性报告和决策支持目的而创建。 为需要业务智能的企业,提供指导业务流程改进、监视时间、成本、质量以及控制

简单来说就是一堆数据集合(log型和db型)的整合处理,,挖掘有效价值,提供决策支持

  • 数据集市
    数据集市(Data Mart) ,也叫数据市场,数据集市就是满足特定的部门或者用户的需求,按照多维的方式进行存储,包括定义维度、需要计算的指标、维度的层次等,生成面向决策分析需求的数据立方体

数仓重抽离出来的以部门数据或者专题数据,也可以简单理解为迷你型数据仓库

离线数仓

  • 架构

ERP/MySQL—sqoop----->Hive/hbase----sqoop---->MySQL-------->BI

hive层就是数仓的核心部分

  • 分层

ODS----->DWD----->DWS----->ADS

不同公司的分层数和叫法都会有略微区别

ODS:基础数据,一般选择初始全量+按分区增量
DWD:清洗后分为维度表和事实表,生成拉链表,保留多条,但是最新一条数据有最新标识(拉链表是一个非常重要的,不知道的可以查一下)
DWS:轻度汇总层,通过DWD层的join,group等操作生成大宽表等
ADS:按需求定制,面向主题,指标层

为什么要分层?

复杂问题简单化: 将一个超级复杂的任务进行分解成多个步骤来完成,
每一层只处理单一的步骤,比较简单,方便定位问题

减少重复开发:规范好数仓的分层,通过中间层的数据,能够减少重复计算,增加一次计算的复用。

隔离原始数据: 数据的敏感,使得真实的数据 和统计的数据分离

数据仓库的分层不是越多越好,合理的层次设计,以及计算成本 和人力成本的平衡,是一个好的数仓架构的表现。

数仓建模

  • 星型模型
    在这里插入图片描述
    数据是有冗余的。
    以存储空间为代价,降低维度表连接数,提高性能。
    简单,高度并行化

  • 星座模型
    在这里插入图片描述

  • 雪花模型
    在这里插入图片描述
    是星型模型的扩展,不同的是维度表被规划化,进一步分解到附加表里
    维度表设计符合3NF,规范化,有效降低数据冗余。
    但是性能差。复杂,并行度低


欢迎关注公众号,一起愉快的交流
在这里插入图片描述

最后

以上就是细腻乐曲为你收集整理的数据仓库分层的全部内容,希望文章能够帮你解决数据仓库分层所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部