商品目录怎么建
商品维度通常冗余类目路径(一级、二级、三级)与品牌、规格等属性,让报表单表就能下钻,不必多次关联类目表。类目名称调整多为类型 1 覆盖,只影响展示;而规格这类高频变化的属性建议拆成子维或迷你维,避免主维行数膨胀。
基本信息
| 粒度 | 一个商品一行,可按需细到 SKU 级 |
|---|---|
| 冗余列 | 一级、二级、三级类目名称与编码 |
| 品牌 | 品牌代理键,或直接冗余品牌名 |
| 类目调整 | 通常按类型 1 覆盖,不影响历史销量归属 |
| 拆分建议 | 颜色、尺寸等高频属性拆子维或迷你维 |
典型使用场景
- 商品结构分析:按类目层级下钻看销量与毛利
- 品牌对比:同一类目下不同品牌的表现差异
- 生命周期分析:上架与下架时间支撑新品与滞销分析
- 库存联动:与库存快照按商品键关联
- 价格带分析:按规格与价格段分组做定价参考
商品维度建表
商品维度建表
-- 商品维:冗余类目路径,报表单表即可下钻
CREATE TABLE dim_product (
product_sk bigint COMMENT '代理键',
product_id string COMMENT '商品编码',
product_name string COMMENT '商品名称',
cat_l1 string COMMENT '一级类目',
cat_l2 string COMMENT '二级类目',
cat_l3 string COMMENT '三级类目',
brand string COMMENT '品牌名称',
start_date date COMMENT '上架日期'
) STORED AS ORC;属性处理建议
| 属性 | 变化频率 | 建议处理 |
|---|---|---|
| 商品名称 | 低 | 类型 1 覆盖 |
| 类目路径 | 中 | 类型 1 覆盖,需历史归属时另存快照 |
| 价格与规格 | 高 | 拆子维或走事实表 |
| 上下架状态 | 中 | 按生效区间或状态列处理 |
类目调整用类型 2 追踪会让维度行数迅速膨胀:商品数量大、类目又频繁调整时,只在确实需要历史归属的场景保留类目快照表更划算。
类目路径不冗余会增加关联跳数:报表要连三级类目表才能下钻,查询复杂且一旦漏关联就会改变结果行数。