Ssas 更改事实表粒度的最佳方法?

Ssas 更改事实表粒度的最佳方法?,ssas,data-warehouse,dimensional-modeling,Ssas,Data Warehouse,Dimensional Modeling,我们有一个多年前创建的立方体,我们有一个更改纹理的请求。为了简化我的场景,事实包含日期维度(每日)、市场维度(拉丁美洲、北美等)和访问次数度量 有一个新的要求包括国家和州。这就是我的想法: 添加一个新的带有国家、州(也许还有邮政编码的地图以备将来使用?) 更新未知的历史记录(当我们更新历史数据时) 更新ETL中的逻辑以通过国家/州加载 如果所有的报告都来自多维数据集,而事实表只是为了支持,那么我会建议添加一个新的事实表,并将它们缝合在下游。方法取决于您的要求 您的国家和州与驱动市场的事实数据

我们有一个多年前创建的立方体,我们有一个更改纹理的请求。为了简化我的场景,事实包含日期维度(每日)、市场维度(拉丁美洲、北美等)和访问次数度量

有一个新的要求包括国家和州。这就是我的想法:

  • 添加一个新的带有国家、州(也许还有邮政编码的地图以备将来使用?)
  • 更新未知的历史记录(当我们更新历史数据时)
  • 更新ETL中的逻辑以通过国家/州加载

如果所有的报告都来自多维数据集,而事实表只是为了支持,那么我会建议添加一个新的事实表,并将它们缝合在下游。方法取决于您的要求

您的国家和州与驱动市场的事实数据的相同属性相关联。

在这种情况下,自然的建模方法是将额外的谷物添加到现有的市场维度中。您可以通过以下几个步骤完成此操作:如果内存可用,则如下所示:

  • 您的市场数据应以视图的形式呈现给多维数据集。如果不是,请创建一个,并在DSV中用“另一个表”替换该表,并将其指向新视图。增强此视图,以便它提供您的组合地理信息-每个州/国家/市场的一行

  • 确保有记录,我们可以将旧的谷物事实联系起来。论文的市场价值也将体现为国家和国家的价值。(也就是说,将不规则的层次结构级联到键值)

  • 为旧的+新的谷物事实数据创建行源。我想这些将来自不同的来源。这可以是两者的联合视图,旧的[Market]反映为旧事实数据的[State]。或者,您可以在多维数据集中为每个实现它们的视图创建一个视图,作为单独的分区

  • 将关键属性层次结构的名称从[Market]更改为[State](假设State-->国家/地区和State-->市场)

  • 将其键/名称从market的键/名称字段更改为[State]的键/名称字段 再次为Country添加属性层次结构,为Market添加新的属性层次结构,确保其与以前相同,以避免破坏旧报告

  • 在县和市场之间添加属性关系(仅当它是所有事实记录的严格父级时)

  • 在多维数据集设计器的“度量值组/维度使用”窗格中,删除并重新添加事实和维度之间的直接关系

  • 这是为了让您能够最平滑地适应针对旧数据编写的任何MDX。您的维度将保留其名称,该名称可能已过时。当然,如果您准备打破使用多维数据集的旧报告,您可以重新设计一些东西,给维度起一个新名称

    您的国家和州独立于该属性,并且(例如)数据可能出现在拉丁美洲市场和美国国家。

    然后,您只需要添加一个更简单的新维度

  • 创建一个行集以从中生成新维度,并确保它有一行用于Country=“UNKNON”和State=“UNKNOWN”。最好用一个整数为维度设置关键帧,假设我们给这个记录[GeoId]=0

  • 使用新维度的键向多维数据集提供新的粒度数据。您的旧事实数据应该作为视图呈现给多维数据集,并且该视图可以为所有记录上的新列[GeoId]提供文本值0

  • 将所有这些合并在一起,或将它们服务于度量值组的单独分区。
    将关系添加到度量值组/维度使用中的新维度


  • 对于多维数据集数据中的几乎所有消费者来说,这是一个非破坏性的更改

    如果所有报告都来自多维数据集,而事实表只是为了支持这一点,那么我建议添加一个新的事实表,并将它们缝合在下游。方法取决于您的要求

    您的国家和州与驱动市场的事实数据的相同属性相关联。

    在这种情况下,自然的建模方法是将额外的谷物添加到现有的市场维度中。您可以通过以下几个步骤完成此操作:如果内存可用,则如下所示:

  • 您的市场数据应以视图的形式呈现给多维数据集。如果不是,请创建一个,并在DSV中用“另一个表”替换该表,并将其指向新视图。增强此视图,以便它提供您的组合地理信息-每个州/国家/市场的一行

  • 确保有记录,我们可以将旧的谷物事实联系起来。论文的市场价值也将体现为国家和国家的价值。(也就是说,将不规则的层次结构级联到键值)

  • 为旧的+新的谷物事实数据创建行源。我想这些将来自不同的来源。这可以是两者的联合视图,旧的[Market]反映为旧事实数据的[State]。或者,您可以在多维数据集中为每个实现它们的视图创建一个视图,作为单独的分区

  • 将关键属性层次结构的名称从[Market]更改为[State](假设State-->国家/地区和State-->市场)

  • 将其键/名称从market的键/名称字段更改为[State]的键/名称字段 再次为Country添加属性层次结构,为Market添加新的属性层次结构,确保其与以前相同,以避免破坏旧报告

  • 在县和市场之间添加属性关系(仅当它是所有事实记录的严格父级时)

  • 在多维数据集设计器的“度量值组/维度使用”窗格中,删除并重新添加事实和维度之间的直接关系