立方体存储(Analysis Services - 多维数据)

存储只能包含多维数据集元数据,也可以包括事实数据表中的所有源数据,以及与度量值组相关的维度定义的聚合。 存储的数据量取决于所选的存储模式和聚合数。 存储的数据量直接影响查询性能。 Microsoft SQL Server Analysis Services 使用多种技术来最大程度地减少多维数据集数据和聚合存储所需的空间:

  • 通过存储选项,可以选择最适合多维数据集数据的存储模式和位置。

  • 复杂的算法设计高效的摘要聚合,以最大程度地减少存储,而不会牺牲速度。

  • 不会为空单元格分配存储。

存储按分区定义,多维数据集中的每个度量值组至少有一个分区存在。 有关详细信息,请参阅 分区(Analysis Services - 多维数据)分区存储模式和处理度量值和度量值组,以及 创建多维模型中的度量值和度量值组

分区存储

度量值组的存储可以分为多个分区。 通过分区,可以将度量值组分布到单个服务器或跨多个服务器上的离散段,并优化存储和查询性能。 度量值组中的每个分区都可以基于不同的数据源,并使用不同的存储设置进行存储。

创建分区时,请指定该分区的数据源。 还可以更改任何现有分区的数据源。 度量值组可以垂直或水平分区。 垂直分区度量值组中的每个分区都基于单个源表的筛选视图。 例如,如果度量值组基于包含几年数据的单个表,则可以为每年的数据创建单独的分区。 相比之下,水平分区度量值组中的每个分区都基于单独的表。 如果数据源将每年的数据存储在单独的表中,则可以使用水平分区。

分区最初使用与在其中创建的度量值组相同的存储设置创建。 存储设置确定详细信息和聚合数据是以多维格式存储在 Analysis Services 实例上、源服务器上的关系格式还是两者的组合中。 存储设置还确定主动缓存是否用于自动处理对 Analysis Services 上存储的多维数据的源数据更改。

多维数据集的分区对用户不可见。 但是,选择不同分区的存储设置可能会影响数据的即时性、使用的磁盘空间量以及查询性能。 分区可以存储在 Analysis Services 的多个实例上。 这提供了多维数据集存储的群集方法,并跨 Analysis Services 服务器分发工作负荷。 有关详细信息,请参阅分区存储模式和处理远程分区分区(Analysis Services - 多维数据)。

关联度量组

它可能需要相当大的磁盘空间来将多维数据集的多个副本存储在 Analysis Services 的不同实例上,但通过将度量值组的副本替换为链接度量值组,可以大大减少所需的空间。 链接度量值组基于另一 Analysis Services 数据库中另一个多维数据集中的度量值组,该组位于 Analysis Services 的相同或不同实例上。 链接度量值组还可以与来自同一源多维数据集的链接维度一起使用。 链接的维度和度量值组使用源多维数据集的聚合,并且没有自己的数据存储要求。 因此,通过在一个数据库中维护源度量值组和维度,并在其他数据库中的多维数据集中创建链接的多维数据集和维度,可以节省用于存储的磁盘空间。 有关详细信息,请参阅 链接度量值组

另请参阅

聚合和聚合设计