12、零售销售数据处理:事实表与维度表的关键要点

零售销售数据处理:事实表与维度表的关键要点

1. 新增测量事实的处理

在数据处理中,当有新的测量事实出现时,我们需要将其合理地添加到事实表中。最简单的情况是,新事实与现有事实处于相同的测量事件且粒度一致。此时,我们可以直接修改事实表,添加新的列,并将对应的值填充进去。若新事实只能从某个时间点开始获取,那么在旧的事实行中需要填入空值。

而当新测量事实的粒度与原事实表不同时,情况会变得复杂。若新事实无法分配到原事实表的粒度上,就应该为其创建独立的事实表,因为在同一事实表中混合不同粒度的数据是错误的做法。

2. 无事实事实表的作用

传统的零售销售模式无法回答“哪些促销产品未售出”这一重要问题。销售事实表仅记录实际售出的商品,对于未售出的商品,不会在表中添加零事实行,因为这会极大地扩大事实表的规模。

为了解决这个问题,我们需要引入促销覆盖或事件事实表,即无事实事实表。在这个案例中,该表的键包括日期、产品、商店和促销。它与销售事实表看似相似,但粒度有显著差异。对于促销覆盖事实表,无论产品是否售出,每天(或每周,如果零售促销周期为一周)都会为每个商店中参与促销的产品加载一行数据。

这个事实表能让我们看到由促销定义的键之间的关系,而不受实际产品销售等其他事件的影响。为了便于计数,我们可以添加一个虚拟事实,如促销计数,其值始终为 1,这样可以让商业智能(BI)应用避免对某个外键进行计数。

要确定哪些促销产品未售出,需要分两步进行:
1. 查询促销无事实事实表,确定某一天参与促销的产品范围。
2. 从销售点(POS)销售事实表中确定实际售出的产品。
最终答案就是这两个产品列表的差集。如

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值