数据仓库拆分维度
Data warehouse split dimension
在我们的数据仓库中,我们有 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 服务器和 SSAS 多维数据集中是否可行?
我会将客户组添加为客户维度的属性和层次结构,因为它显然是客户的 属性。
如果你加一些attribute relationships inside the dimension it should be helping your performance.
如果将其创建为新维度,查询处理器确实需要执行非空,如果它是具有属性关系的维度属性,则它可以使用位图索引来确定结果是否为空。由于您没有那么多群组,这将非常有益。
正如您所说,它经常被查询,我认为这是可行的方法。
我看不出添加额外的维度会给您带来什么好处。
在我们的数据仓库中,我们有 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 服务器和 SSAS 多维数据集中是否可行?
我会将客户组添加为客户维度的属性和层次结构,因为它显然是客户的 属性。
如果你加一些attribute relationships inside the dimension it should be helping your performance.
如果将其创建为新维度,查询处理器确实需要执行非空,如果它是具有属性关系的维度属性,则它可以使用位图索引来确定结果是否为空。由于您没有那么多群组,这将非常有益。
正如您所说,它经常被查询,我认为这是可行的方法。
我看不出添加额外的维度会给您带来什么好处。