我已经为客户注册的步骤创建了一个累积快照事实表——例如,每个步骤的时间、步骤之间的时间。
如果我想要一个非常丰富的customer维度,我可以包含来自累积快照表的所有列吗?还是多余?
如果我将累积快照中的列包含在customer维度中,那么为流程创建事实表有什么意义?如果不包括列,我就无法使用customer维度轻松筛选。
最佳答案
当你想回答“过去7天内,终生花费超过1000美元的客户的总净销售额是多少”这样的问题时,向客户维度添加“近实时”指标对于分析非常有用。.
将此数据存储在累积的快照中会建立一个多步骤的ETL过程:
加载事务事实表
加载客户维度,保持昨天的指标。
加载累积快照
使用新的生命周期度量更新客户维度。或者,创建一个视图,将customer dim与此快照表预联接。
作为客户维度构建的一部分,您可以选择这样做,但是将表分离到累积快照中对于直接对该快照表进行分析非常有用。
例如,如果我的累积快照是“Total Lifetime Customer Sales by Product”,我可以从中提取所有产品的Total Lifetime Sales,并将其放在我的Customer Dim上(可能比再次重新查询事务事实更快)。我仍然希望能够使用事实的产品,客户分析以及。
如果您的累积快照只在客户的粒面上,我可以看到直接在客户dim上进行构建。但通常它是有用的,有一个较低的粮食,以便其他事情可以用它。
关于database - 在维表中包括来自累积快照表的所有信息?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15375200/