【问题标题】:SQL Server 2005 Analysis Services data updateSQL Server 2005 Analysis Services 数据更新
【发布时间】:2013-05-17 19:26:18
【问题描述】:

我是分析服务的新手

我的第一个多维数据集已部署,它似乎可以工作。 维度表没问题,事实表也没问题。

我的问题很简单:如果我在相关的数据源表中添加一条新记录, 浏览多维数据集,直到再次处理多维数据集,我才看到新记录。 在我看来,如果添加了新记录,那么多维数据集必须反映更改。

如何解决这个问题?每次添加新记录时是否需要重新处理多维数据集?这当然是不可能的。

【问题讨论】:

  • 我认为这是一个很好的问题。在我上过的几门关于 SSAS 的课程中​​,这只是在最后一分钟才提到的,与此同时,我一直在想,你到底是如何以及何时告诉 OLAP 服务器更新并从 OLTP 获取新数据的D b。我希望这是一个更受欢迎的话题。感谢您的提问!

标签: sql-server-2005 ssas olap


【解决方案1】:

您了解您的多维数据集本质上代表一堆聚合度量吗?这意味着在处理多维数据集时,它会查看事实表中的所有数据并处理度量(根据维度)。

这样做的结果是您能够快速有效地访问多维数据集中的数据。正如您所提到的,缺点是当新数据添加到事实表时,多维数据集不会更新。

通常会有一个每日批处理作业,该作业将使用最新的事实数据更新多维数据集,具体取决于您拥有的数据量和“实时”要求,这可以每天执行多次。很多人会在下班后这样做。

如果您仔细查看 BIDS,您会注意到分区选项卡上的每个分区都有一个您可以定义的存储模式。

我建议你阅读这篇文章http://sqlblog.com/blogs/jorg_klein/archive/2008/03/27/ssas-molap-rolap-and-holap-storage-types.aspx

基本上,您可以使用几种不同的模式:

MOLAP(多维在线分析处理) MOLAP 是最常用的存储类型。它旨在为用户提供最大的查询性能。数据和聚合以优化的格式存储在多维数据集中。 Cube里面的数据只有在处理Cube的时候才会刷新,所以延迟比较高。

ROLAP(关系在线分析处理) ROLAP 没有 MOLAP 的高延迟缺点。使用 ROLAP,数据和聚合以关系格式存储。这意味着关系源数据库和多维数据集之间的延迟为零。 这种模式的缺点是性能,这种类型的查询性能最差,因为没有对象从多维存储中受益。

HOLAP(混合在线分析处理) HOLAP 是介于 MOLAP 和 ROLAP 之间的一种存储类型。数据将以关系格式 (ROLAP) 存储,因此这种存储类型也将具有零延迟。 另一方面,聚合以多维格式 (MOLAP) 存储在多维数据集中,以提供更好的查询性能。 SSAS 将侦听来自源关系数据库的通知,当发生更改时,SSAS 将收到通知并再次处理聚合。 使用这种模式,可以为用户提供零延迟,但与 MOLAP 和 ROLAP 相比,查询性能中等。

要在无需重新处理多维数据集的情况下获得实时报告,您需要尝试 ROLAP,但请注意,性能会受到影响(取决于多维数据集和服务器的大小!)。

【讨论】:

  • kzhen 非常感谢您的回答。它真的对我有帮助,厄尼
  • 如果是您问题的正确答案,请将其标记为已回答
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-08-03
  • 1970-01-01
  • 1970-01-01
  • 2018-09-26
  • 1970-01-01
  • 2013-11-08
  • 1970-01-01
相关资源
最近更新 更多