IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 大数据--数据仓库--数仓分层和架构 -> 正文阅读

[大数据]大数据--数据仓库--数仓分层和架构

目录

1.1 数仓分层规范

?1.1.1? 为什么需要数据建模

1.1.2 维度模型

1.1.3 标准数仓分层

1.1.4 其他数仓分层

1.2 常见的数据架构

1.2.1 传统关系数据库--范式建模

1.2.2 .Kimball架构和Inmon架构


1.1 数仓分层规范

?1.1.1? 为什么需要数据建模

??????大数据系统需要数据模型方法来帮助更好的组织和存储数据,以便在性能,成本,效率和质量之间取得最佳平衡。

  • 性能:良好的数据模型能够帮我们快速查询所需要的数据,减少数据的I/O吞吐。

  • 成本:良好的数据模型能够极大地减少不必要的数据冗余,也能够实现计算结果复用,极大地降低大数据系统中的存储和计算成本。

  • 效率:良好的数据模型能极大地改善用户使用数据的体验,提高使用数据的效率。

  • 质量:良好的数据模型能改善数据统计口径的不一致性,减少数据计算错误的可能性。

1.1.2 维度模型

????维度模型是数据仓库工程领域最流行的数据仓库建模的经典。

????维度建模从分析决策的需求出发构建模型,为分析需求服务,因此它重点关注用户如何更快速地完成需求分析,同时具有较好的大规模复杂查询的响应性能。其典型的是星型模型,以及在一些特殊场景下使用的雪花模型。

1.1.3 标准数仓分层

????目前教学或者书籍上最经典的分层是分为五层。依次为ODS,DWD,DWS,DWT,ADS层。

  • ODS:保持数据原貌,不做任何修改,起到数据备份的作用;

?????????????????????创建分区表,防止后续全表扫描;

?????????????????????采用压缩,减少磁盘存储空间。

  • DWD:主要是用来描述一共业务的全过程。

????????????采用标准的建模四步:选择业务过程,声明粒度,确定维度,确认事实 。

  • DWS:主要做一个事实的累计,即把来自不同业务系统的业务过程联系起来,做一个累 ? 计事实表,为后期宽表的建设打下基础。

  • DWT:做一些维度退化,字段冗余,按照每天轻度汇总,构建一共事实明细宽表。

  • ADS:根据需求,开发指标,满足报表需求。

1.1.4 其他数仓分层

????????一些企业会分成A,B,C层

  • A层

????????????ODS:原始数据层,同标准数仓分层中的ODS 层。

  • B层

????????????事实层(fact):同标准数仓分层中的DWD层。

????????????原件层(unit):同标准数仓层中的DWS层,另外除了有累计事实都设计,还会有事实 ? ? ? ? 解耦的设计。

????????????主题层(topic):进行维度退化,字段冗余,构建一个公共宽表。

????????????聚合层(aggr):进行轻度聚合,类似于=标准数仓中的DWT层。

  • C层

应用层(app):根据需求计算指标

  • 其他

维度表:贯穿整个数仓。进行维度关联的时候使用。

1.2 常见的数据架构

1.2.1 传统关系数据库--范式建模

????1. 范式建模目的

  • 减少数据冗余,尽量让每个数据只出现一次。

  • 保证数据的一致性。数据都只存在于一个地方,其他都从这个地方取数,这当然就保证了数据的一致性。

???2.函数依赖

  • 完全函数依赖:

????(学号,课程名称)--> (课程分数),但是左侧中单独一个是推到不出分数的。

  • 部分函数依赖:

????????????????(学号,课程名称) → (姓名)。但是只通过学号这一列也可以推导出姓名,所以课程名称这一列是多余的。

  • 传递函数依赖:

??????(学号)--> (系名) → (系主任)。但是学号推导不出系主任。

????3.范式分类

  • 第一范式:属性不可分

  • 第二范式:不能存在部分函数依赖

  • 第三范式:不能存在传递函数依赖

1.2.2 .Kimball架构和Inmon架构

????1.Kimball

?????????Kimball主要探讨需求分析,高层模型,详细模型,模型审查整个过程。

  • 高层设计:定义业务过程维度模型范围,提供每种星形的技术和功能描述。

  • 详细模型设计:对每个星形模型添加属性和度量信息。

  • 模型的审查,再设计,验证等工作。

  • 产生详细设计文档,提交ETL设计和开发.

???2.Inmon

??????模型的定位:扮演着通往数据仓库其他部分的智能线路图的角色,划分为三个层次。

  • 实体关系图

  • 数据项集

  • 物理模型

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-09-03 11:59:18  更:2021-09-03 12:00:29 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 16:51:11-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码