首页/数据/数仓建模速查/雪花模型 Snowflake Schema
建模基础69 条

雪花模型 Snowflake Schema

雪花模型把维度进一步范式化拆分为多层子维;存储更省、层次更清晰,但 join 变多、查询复杂度上升。

数仓建模速查数据更新于 2026-10-12
结构维度再拆子维
优点减少冗余
代价join 增加、ETL 更复杂

示例

示例
-- 商品 -> 类目 -> 一级类 多级 join
SELECT c1.name, sum(f.amount) FROM fact f JOIN dim_p p ON f.k=p.k JOIN dim_cat c ON p.cat=c.id JOIN dim_cat c1 ON c.pid=c1.id GROUP BY 1;
现代数仓更常见折中:主体星型 + 局部雪花化子维。

易错点

  • 为省存储全面雪花化,查询成本转嫁给所有下游
  • 雪花层次深度不受控,BI 用户难以自助使用

数据来源与参考

  • Kimball 方法论:雪花与星型对比
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌