数据仓库维度表与事实表

2024-02-28 02:30

本文主要是介绍数据仓库维度表与事实表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据仓库维度表与事实表

数据仓库目前主要作用还是商业智能决策,而维度建模是数仓数据分析最常用的建模方法,建模当中维度表和事实表是不可或缺的重要组成部分,维度表是记录实体属性的表,是数据分析的主要对象,事实表记录事实数据,提供分析对象的度量值。

维度表是存储分析对象属性数据的表,作为分析对象如果数据出现问题,很可能导致下游一系列分析数据出现问题,故而维度表的数据标准化和准确度要求很高,接下来才是本篇文章的主体,为了保证维度表数据准确性就有了渐变维度。
渐变维度方式主要分为:重写、添加新的记录、添加列,不同的方式应用在不同的业务背景下。

1.重写

直接在维度表上面修改对象属性信息,这种一般应用在数据校正的前提下,例如:某电商仓库维表中代理键为A1仓的仓库名称更改,原本叫广州01仓,现在改成深圳01仓,这种情况最好就是直接重写维表A1仓的名称,同时向业务方征集意见看历史数据是否需要处理,然后将需要冲刷的历史数据重刷,不能重刷的历史数据向业务方发布消息不在更新广州01仓的数据。

仓库code仓库名称
A1广州01仓 深圳01仓

2.添加新的记录

添加一条新的记录信息,同时用生效日期时间段、更新原因、当前标记列来记录该信息,这种应用在对象属性信息变更,同时以前的信息有用,例如:还是某电商仓库维表代理键为A1仓的仓库分类变更,由原本的合约仓变成现在的保税仓,因为合约仓和保税仓的某些指标的计算方式的不一样,所以不能用重写的方式再去重刷历史数据,此时添加新的记录信息,用时间和当前标记来区分,可以在计算的时候分别用不同的计算方式计算而不影响数据准确信。
在这里插入图片描述

3.添加列

维度表新增一列,缺点是无法优雅的新增很多列,应用于对象在一个属性上有两层意思的场景,例如:还是那个电商的维度表代理键为A1仓的仓库分类,原本它只是一个合约仓,现在它不仅是合约仓还是保税仓,这样前两种处理方式明显都不合适,最好处理方式就是添加一列-备用仓库分类,这样在使用的时候可以根据实际需要自由选择不同的仓库分类。
在这里插入图片描述
事实表是存储分析对象的度量数据的表,根据不同的应用场景也可以划分为三种:交易表、快照表、累加式快照表。

1.交易表

一笔交易单据记录一条数据。

2.快照表

客户账户余额或者仓库存储货量每天都在变化,为了记录每天的数据变化将每天的数据都记录下来。
在这里插入图片描述

3:累加式快照表

假如交易表只记录交易事实,快照表只记录节点状态,那么累加式快照表就是将每笔单据开始到结束的每个状态以及时间节点都记录下来,采用的方法就是重写。
在这里插入图片描述
浅显的个人理解,欢迎补充…

这篇关于数据仓库维度表与事实表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/754204

相关文章

MySQL按时间维度对亿级数据表进行平滑分表

《MySQL按时间维度对亿级数据表进行平滑分表》本文将以一个真实的4亿数据表分表案例为基础,详细介绍如何在不影响线上业务的情况下,完成按时间维度分表的完整过程,感兴趣的小伙伴可以了解一下... 目录引言一、为什么我们需要分表1.1 单表数据量过大的问题1.2 分表方案选型二、分表前的准备工作2.1 数据评估

MySQL 临时表与复制表操作全流程案例

《MySQL临时表与复制表操作全流程案例》本文介绍MySQL临时表与复制表的区别与使用,涵盖生命周期、存储机制、操作限制、创建方法及常见问题,本文结合实例代码给大家介绍的非常详细,感兴趣的朋友跟随小... 目录一、mysql 临时表(一)核心特性拓展(二)操作全流程案例1. 复杂查询中的临时表应用2. 临时

MySQL 数据库表与查询操作实战案例

《MySQL数据库表与查询操作实战案例》本文将通过实际案例,详细介绍MySQL中数据库表的设计、数据插入以及常用的查询操作,帮助初学者快速上手,感兴趣的朋友跟随小编一起看看吧... 目录mysql 数据库表操作与查询实战案例项目一:产品相关数据库设计与创建一、数据库及表结构设计二、数据库与表的创建项目二:员

数据仓库理论知识

1、数据仓库的概念          数据仓库(英文:Date Warehouse,简称数仓、DW),是一个用于数据存储、分析、报告的数据系统。数据仓库的建设目的是面向分析的集成化数据环境,其数据来源于不同的外部系统,其结果开放给不同外部应用使用,为企业提供决策支持; 2、数据仓库的主要特征 数据仓库是面向主题性(Subject-Oriented )、集成性(Integrated)、非易

顺序表与链表练习

目录 1.在长度为n(n > 1)的单链表上,设有头和尾两个引用,执行( )操作与链表的长度有关。 2.下列关于链表的说法那个是正确的( )  3. 关于链表和顺序表间的区别,叙述错误的是(    )  4.在长度为 n 的顺序表下标为 i 的位置前插入一个元素(1 ≤ i ≤ n+1),元素的移动次数为(   ) 5.Which statement is true for the

当网工,华为认证哪种适合我?四个维度来解惑

随着网络技术的不断进步,对网工的专业技能要求也越来越高。 在这种背景下,获得权威认证成为了提升个人技能、证明专业能力的重要途径。 华为,作为全球领先的ICT解决方案提供商,其认证项目在业界享有极高的声誉。 华为认证不仅涵盖了网络技术的各个方面,还根据不同的技能水平和职业发展阶段,提供了不同级别的认证,包括HCIA、HCIP、HCIE。 这些认证不仅有助于网络工程师提升自己的技术水平,也是企业在招聘

数据仓库: 6- 数据仓库分层

目录 6- 数据仓库分层6.1 简介6.1.1 数据仓库分层的优势6.1.2 常见的数据仓库分层模型6.1.2.1 四层模型6.1.2.2 三层模型 6.1.3 数据仓库分层原则6.1.4 数据仓库分层示例6.1.5 总结 6.2 ODS(操作数据存储)层6.2.1 ODS 层的主要功能6.2.2 ODS 层的特点6.2.3 ODS 层的设计要点6.2.4 ODS 层的应用场景6.2.5 总

数据仓库系统的实现与使用(含OLAP重点讲解)

系列文章: 《一文了解数据库和数据仓库》 《DB数据同步到数据仓库的架构与实践》 《数据湖(Data Lake)-剑指下一代数据仓库》 《从0建设离线数据仓库》 《基于Flink构建实时数据仓库》 阅读目录 前言创建数据仓库ETL:抽取、转换、加载OLAP/BI工具数据立方体(Data Cube)OLAP的架构模式小结 前言 数据仓库是数据仓库开发中最核心的部分。然而完整的数据仓库系统还会涉及

【数据产品案例】有赞大数据实践- 敏捷型数据仓库的构建及其应用

案例来源:@洪斌 案例地址: https://tech.youzan.com/you-zan-big-data-practice/ 1. 数据仓库处理:近源数据层→数据宽表→基础指标表 1)近源数据层:封装中间层,实现: a. 合并不同业务数据,如pc和app的日志数据 b. 脏数据屏蔽 c. 冗余字段合并 2)数据宽表:提取足够

浅谈单链表与双链表的区别

数组的优点 随机访问性强(通过下标进行快速定位) 查找速度快 数组的缺点 插入和删除效率低(插入和删除需要移动数据) 可能浪费内存(因为是连续的,所以每次申请数组之前必须规定数组的大小,如果大小不合理,则可能会浪费内存) 内存空间要求高,必须有足够的连续内存空间。 数组大小固定,不能动态拓展 链表的优点 插入删除速度快(因为有next指针指向其下一个节点,通过改变指针的指向可以方便的增加删除元素)