本包目录(311 条)

杂项维度

杂项维度把事实表中若干低基数、彼此无关的标志位(是否新客、是否加急、来源渠道标记)合并成一张维度表,用组合编码压缩事实表宽度,避免为每个标志单独建维度。

适用多个低基数独立标志位
做法笛卡尔组合生成一行一组合
收益事实表变窄、查询可读
注意组合数要可控,过量则得不偿失

组合维度示意

组合维度示意
CREATE TABLE dim_order_junk (
  junk_sk INT,
  is_new_user  STRING,  -- Y/N
  is_urgent    STRING,  -- Y/N
  order_source STRING   -- app/h5/mini
);
-- 事实表只存 junk_sk,替代三个标志字段
标志位已经很多且组合爆炸时,优先把可归类的标志做成正式维度属性,而不是硬塞进杂项维度。

易错点

  • 标志位新增时忘记扩展杂项维度表,事实写入失败或落空值
  • 组合表未随业务增长维护,出现查不到的 junk_sk

数据来源与参考

  • Kimball《The Data Warehouse Toolkit》杂项维度(Junk Dimension)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌