数据仓库核心概念:事实表和维度表详解与实战应用
数据仓库核心概念事实表和维度表详解与实战应用一、引言二、定义什么是事实表什么是维度表2.1 事实表定义2.2 维度表定义三、结构流程图事实表与维度表关联关系3.1 标准星型模型关联流程图四、核心特征事实表 vs 维度表全方位对比4.1 事实表核心特征4.2 维度表核心特征4.3 核心特征对比表五、作用事实表和维度表的核心功能5.1 事实表的作用5.2 维度表的作用六、关系事实表与维度表的核心关联逻辑七、实战案例订单场景下的事实表与维度表7.1 业务场景7.2 事实表订单事实表7.3 维度表1用户维度表7.4 维度表2商品维度表7.5 维度表3时间维度表7.6 分析逻辑八、总结结束语The Begin点点关注收藏不迷路一、引言在数据仓库维度建模体系中事实表Fact Table和维度表Dimension Table是最核心的两大基础组件二者相辅相成共同构成了数仓建模的基石。对于数仓开发、数据分析、BI报表开发人员来说彻底理解事实表和维度表的定义、特征、作用及关系是搭建高质量数据仓库、写出高效分析SQL的前提。本文将从定义、核心特征、结构流程图、作用、二者关系、实战案例六大维度全面拆解事实表与维度表让你一次性吃透数仓建模核心概念。二、定义什么是事实表什么是维度表2.1 事实表定义事实表是数据仓库中存储业务度量值、量化指标、可统计数据的核心表是数仓的主体数据。简单理解事实表 业务发生的客观事实 可统计的数字指标记录的是企业的业务行为结果。核心关键词数字、指标、度量、行为记录2.2 维度表定义维度表是数据仓库中描述业务事实的属性、环境、角度的表是事实表的描述信息。简单理解维度表 事实表的“说明书”用于回答谁、何时、何地、何物、何种方式等描述性问题。核心关键词属性、描述、角度、维度、查询条件三、结构流程图事实表与维度表关联关系3.1 标准星型模型关联流程图关联关联关联事实表订单表订单ID|用户ID|商品ID|金额|数量|时间ID维度表用户用户ID|姓名|年龄|城市|等级维度表商品商品ID|名称|分类|品牌|价格维度表时间时间ID|日期|月份|季度|星期核心关系事实表通过外键ID关联维度表的主键ID维度表为事实表提供描述属性。四、核心特征事实表 vs 维度表全方位对比4.1 事实表核心特征数据类型以数值型、可统计的度量值为主金额、数量、次数、时长数据量数据量极大是数仓中最大的表千万/亿/十亿级表结构字段少、行数多窄表长表数据更新只增不改追加写入不删除历史数据主键由多个维度外键组合而成联合主键4.2 维度表核心特征数据类型以字符串、描述性属性为主姓名、城市、分类、名称数据量数据量小相对稳定百/千/万级表结构字段多、行数少宽表短表数据更新偶尔更新用户修改信息、商品分类调整主键单一主键用户ID、商品ID、时间ID4.3 核心特征对比表对比维度事实表维度表核心内容业务指标、度量值描述属性、维度信息数据形态数字、可统计文字、描述性数据规模极大亿级较小万级内表结构窄表、长表宽表、短表数据变化只新增、不修改偶尔更新、缓慢变化主键联合主键单一主键五、作用事实表和维度表的核心功能5.1 事实表的作用提供核心统计指标存储企业核心业务数据如销售额、订单量、用户数、利润、访问次数等。支撑数据分析计算作为聚合计算的基础完成求和、计数、平均值、最大值等统计分析。记录业务历史事实永久保存业务行为记录支持历史追溯、趋势分析、同比环比计算。数仓建模的核心主体是星型模型、雪花模型的中心表所有维度表围绕事实表展开。5.2 维度表的作用提供分析角度与筛选条件支持按用户、商品、时间、地区、渠道等多维度筛选、分组、查询。统一数据描述口径标准化业务属性消除数据歧义确保全公司数据口径一致。简化复杂查询逻辑无需重复编写属性逻辑通过关联即可获取完整描述信息。支撑多维OLAP分析实现钻取、切片、旋转、切块等高级分析功能。六、关系事实表与维度表的核心关联逻辑主从关系事实表是主表存储核心数据维度表是从表存储描述信息。外键关联事实表通过维度ID外键关联维度表的主键实现表连接。多对一关系事实表中多条记录对应维度表中一条记录多个订单 → 一个用户。不可分割单独的事实表无业务意义单独的维度表无统计价值必须结合使用。七、实战案例订单场景下的事实表与维度表7.1 业务场景用户在电商平台下单购买商品产生订单数据。7.2 事实表订单事实表订单ID用户ID商品ID时间ID支付金额商品数量110012001300199.822100220023001199.91310012003300259.91说明存储可统计的金额、数量是事实表。7.3 维度表1用户维度表用户ID姓名年龄城市用户等级1001张三25北京VIP1002李四30上海普通7.4 维度表2商品维度表商品ID商品名称商品分类品牌2001无线耳机3C数码华为2002连衣裙服饰优衣库7.5 维度表3时间维度表时间ID日期月份季度星期30012025-01-012025-01Q1周三30022025-01-022025-01Q1周四7.6 分析逻辑通过事实表统计总销售额通过维度表筛选「北京用户」「3C数码」「1月份」的订单数据。八、总结事实表存储数字指标、业务事实数据量大、只增不改是数仓的核心计算基础。维度表存储描述属性、分析角度数据量小、偶尔更新是数仓的查询筛选基础。核心关系事实表通过ID外键关联维度表共同支撑多维分析与决策。一句话记忆事实表管“算多少”维度表管“按什么算”。结束语事实表和维度表是数据仓库建模的入门第一课也是最重要的一课。掌握二者的区别与关联就能轻松理解星型模型、雪花模型、数仓分层等核心知识。后续我将持续更新数仓建模实战、缓慢变化维、事实表设计等干货内容欢迎关注、点赞、收藏The End点点关注收藏不迷路
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2473320.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!