做数据仓库的朋友,几乎绕不开星型模型。但很多人一开始就被“维度”这个概念绕晕了——维度到底有几种?每种该怎么用?
三类核心维度,先分清
![]()
星型模型中的维度,主要分为三种:常规维度(Regular)、垃圾维度(Junk)和退化维度(Degenerate)。常规维度就是最常见的独立维度表,比如“用户表”“产品表”;垃圾维度用来存放那些零散的、低基数的标志位或状态字段,比如“是否新客”“支付方式”;退化维度则直接留在事实表里,不单独建表,典型例子就是订单号。
建模时还要懂这几个概念
光知道三类还不够,实际建模中还会遇到一致性维度(Conformed)、维度矩阵、代理键(Surrogate Key)以及SCD2(缓慢变化维度类型二)。一致性维度用于多个事实表共享同一套维度定义,保证口径统一;代理键则是用无业务含义的自增ID替代业务主键,避免源系统变更带来的麻烦;SCD2则用来追踪历史变化,保留维度属性的版本记录。
把这几个概念理清楚,星型模型的设计才算真正入门。下次建模前,先对照检查一下:你的维度分对类了吗?
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.