如何为完善的多维数据集和报告套件分离 SSAS 多维数据集数据?

How to segregate SSAS Cube data for well established cube and reporting suite?

我们在生产中拥有完善的 SSAS 多维数据集设计,提供大量可供选择的 SSRS 报告和临时用户报告。 Cube设计有些复杂,大量业务规则写入计算。

有一个新的业务需求,需要将本质上是新实体的内容添加到数据中。通常,这在多维数据集的设计中是允许的,并且会很好地适应现有的维度,特别是在与所有新事实数据相关联的公司层次结构中的新办公室位置。然而,这次的要求是它不会在主要公司层次结构中汇总,但应该以完全相同的方式报告。

我对此的可能解决方案的想法:

  1. 正常添加新实体,如示例中的新办公室。然后将所有现有的MDX SSRS报告更改为Except() this office.
  2. 编写更多多维数据集计算,涵盖所有层次结构的公司级别并排除新办公室。
  3. 创建一个新的多维数据集,该多维数据集与现有多维数据集完全相同,但使用一组视图排除了通过 SQL 提供的数据。所需报告的副本可以指向这个新多维数据集。

我正在寻找我可能没有考虑过的选项以及有关此进一步开发的最佳实践方法的指导。

如果我需要添加更多信息,请告诉我。

您列出的所有选项似乎都需要大量工作。

我认为这种改变可以更容易地在现有的维度结构中完成——而不是重新编码整个多维数据集中的每一件事来应对这种特殊情况。

例如,如果您现有的层次结构如下所示:

ALL
 Region
  Country
   Office Location

您可以将您的 "special" 办公室分配到一个新的、不真实的地区和国家,这样您的地区列表可能如下所示:

Europe
Asia
USA
South America
Special Office

然后 "special" 办公室只会汇总到层次结构的绝对最高级别。如果需要,您可以通过在 "All" 和 "Region" 之间的层次结构中添加一个新级别来缓解这种情况 - 为了方便起见,我们将其称为 "Company" - 看起来像这样:

TheNormalCompany 仅限特殊办公室

然后您可以使用 dimension security to restrict most users to member TheNormalCompany at this level in the hierarchy (but watch out for the Visual Totals gotcha)。那些确实想查看 "special office" 数据的人可以限制为 SpecialOfficeOnly 成员,或者授予两者的访问权限。