【问题标题】:Data warehouse split dimension数据仓库拆分维度
【发布时间】:2015-11-16 19:45:51
【问题描述】:

在我们的数据仓库中,我们有 6 个客户组。每个组有 5000 到 10000 名客户。

我们的星型架构:

dimCustomer               fact
-----------               ------------
CustomerKey               CustomerKey
CustomerName              Measure 
CustomerGroupKey
CustomerGroup

我们经常只查询客户群。我可以添加一个额外的维度吗:

    dimCustomer               fact                  dimCustomerGroup
    -----------               ------------          --------------
    CustomerKey               CustomerKey           CustomerGroupKey
    CustomerName              CustomerGroupKey      CustomerGroup
    CustomerGroupKey          Measure
    CustomerGroup

这在 Microsoft SQL Server 和 SSAS 多维数据集中是否可行?

【问题讨论】:

  • 为什么?您有性能或可用性问题吗?将这一点添加到事实中违背了“简化星型模式”的方法。此外,现在人们对 CustomerGroup 有两种选择——一种在新维度中,一种在 dimCustomer 中。如果他们有不同的结果怎么办?

标签: sql-server ssas data-warehouse olap dimensional-modeling


【解决方案1】:

我会将客户组添加为客户维度上的属性和层次结构,因为它显然是客户的属性。

如果您在维度内添加一些attribute relationships,它应该是helping your performance
如果将其创建为新维度,则查询处理器确实需要执行非空,如果它是具有属性关系的维度属性,则可以使用位图索引来确定结果是否为空。由于您没有那么多组,这将是非常有益的。

正如你所说,它经常被质疑,我认为这是要走的路。

我看不出添加一个额外的维度会给你带来什么好处。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多