我想了解目前的星型模式&在粒度上挣扎了很多。星型模式中的粒度导致事实表中的多个值?
假设我有一个事实表,它具有session_id,user_id,order_id,product_id,并且我想按用户每周汇总到会话(请记住,并非每个会话都会导致订单或产品& DW需要跟踪非购买用户以及购买者的会话)。
我看不出有任何理由来跟踪在事实表order_ids或session_ids所以它会成为类似:
week_date,USER_ID,total_orders,total_sessions ...
但我怎么会那么跟踪product_ids如果用户在一周内进行多次购买?我假设我不能在一个数组中保留多个产品ID(例如:“2012年2月2日”,“5”,“3”,“PR01,PR32,PR22”)?
我在想它可能不得不保留在'每个会话'级别,但这可能会导致大量的数据。你将如何实现上述例子的粒度?
谢谢!没有代表upvote,但这是非常有用的! –