如何将一周纳入日历时间层次?

Bur*_*urg 3 time olap ssas dimensions business-intelligence

与通常使用多维数据集一样,用户希望层次结构显示不适合层次结构的内容.他们希望将Day> Week> Month> Quarter> Year视为等级,但周数问题是它们可以是1-2个月的一部分,而不仅仅是1个月(并且延长部分2个季度,学期,年份).

所以我的问题是:如何设置属性关系,以及如何设置层次结构?这就是我所拥有的,但我知道这不是最佳选择.

层次结构(周期==周):

等级

属性关系:

属性关系 没有周期 - >年,因为它是多对多的关系

Nei*_*gan 6

有四种类型的周可以关注自己:

  1. 一年中的一周(1-53).层次结构:年份>周

    您应该决定是否要在1月1日开始第1周,或者遵循ISO标准

  2. 每月一周(1-5).层次结构:年[>季度]>月>周

    您应该决定是否要在第1个月的第一天或该月的第一个星期日/星期一开始第1周.

  3. 财政周(1-53).层次结构:会计年度>周

  4. 财政周(1-5)周.层次结构:会计年度[>季度]>月份>周


Fra*_*kPl 5

您可以保留现有的设计,甚至可以将周添加到“日历时间”层次结构中,这样就只有用户要求的一个层次结构。这就是微软所说的非自然层次结构。这些层次结构的 Analysis Services 查询响应时间比自然层次结构(所有子级别都与其父级别有关系的层次结构)慢得多。这就是您在投标中收到警告的原因。您只需测试性能对于您的用户来说是否足够好。如果是的话,很好。如果不是,可能会从单层次结构解决方案回退到问题中描述的两层次结构解决方案。那么至少第一个层次结构会很快,而只有第二个层次结构的性能很差。

还有其他解决方案,但它们都有点不自然:有些公司将月份定义为正好四到五周,以便可以设置关系,但报告月在日历月之前或之后的几天开始或结束。例如,参见Wikipedia 中的 4-4-5 日历文章