【问题标题】:Dimension Model for New customers in current month本月新客户维度模型
【发布时间】:2015-12-15 05:16:19
【问题描述】:

我已经开始使用维度模型来了解访问商店的新客户数量。我在为此目的确定事实和维度时有点困惑。有人可以在这方面帮助我吗?

据我了解,我已将客户、产品、发票、时间、付款确定为维度(根据级别 0)。但是,我不确定如何在这方面识别事实。我知道事实是那些可衡量的数据。我想要实现后数据模型的度量或结果是如何获取当月访问的新客户的计数。

【问题讨论】:

  • 数据建模者的一个很好的资源是数据仓库工具包 (ISBN:9781118530801)。它是由 Kimball Group 编写的,他们的网站上有一些有用的东西 (kimballgroup.com/data-warehouse-business-intelligence-resources/…)。
  • 有几种方法可以解决这个问题。如果您有一个销售事实表,每笔销售包含 1 行,您可以在该表中搜索每个客户的最早订单。或者,您可以在客户维度中捕获“开放”日期,这将是一个方便的过滤器。

标签: data-warehouse business-intelligence dimensional-modeling


【解决方案1】:

每次访问都会产生发票吗?如何定义“新客户”(即他们的第一张发票,在他们的第一张发票之后的某个时间段?)

如果是这样,一个选项是创建一个"factless fact table" 来捕获每个发票事件并创建一个维度来指示该发票是该客户(即新客户)的第一张发票。然后,您可以使用不同数量的患者,其中“新客户”维度表明他们是新客户。

FactVisit(TimeKey,CustomerKey,InvoiceKey,ProductKey,PaymentKey,NewCustomerIndicatorKey) DimNewCustomerIndicatorKey(NewCustomerIndicatorKey, ...) {"Y", "N")

另一种可能性是一个单独的事实表,它在客户第一次出现时捕获一行。

另一种选择是在客户维度中包含一个属性,该属性包含客户首次出现的日期。

很大程度上取决于您使用的是什么/如果有任何 OLAP 前端,以及您使用什么工具来报告结果。

【讨论】:

    猜你喜欢
    • 2011-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多