如何在经典星型模式中为更多产品建模?

问题描述

我正在数据仓库中构建一个用于报告的经典星型模式。

我的衡量标准是每个电话号码每月的数据量 (MB)。

我的维度是时间、产品、客户和供应商。

我的问题是有些客户在某个月内为每个电话号码购买了不止一件产品。

关于如何在经典星型模式中实现这一点的任何想法?

将这些列添加到我的事实表中?

  • PRODUCT_1_FK
  • PRODUCT_2_FK
  • PRODUCT_3_FK

问候,

基督徒

解决方法

如果您的度量是“每个电话号码每月的数据 (MB)”,那么您不能将产品作为维度包含在内,因为这会改变度量的粒度。

如果您希望度量的粒度为“每个电话号码每个产品的数据(MB)”,那么您需要将 Product 添加到您的事实中,并且每个产品将有 1 个事实记录

,

让我们想象一下这个场景:

  • ID=101 的客户通过电话购买了 ID=100 的产品 2021 年 1 月 25 日
  • ID=101 的同一个客户购买了另一个 ID=120 的产品 电话,2021 年 1 月 28 日

在您的事实表中会怎样?

CustomerSK ProductSK SupplierSK TimeSK
101        100       122        25-01-2021 09:00:30
101        120       189        28-01-2021 16:08:11

enter image description here

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...