为什么要构建SSAS Cube?

7

我正在寻找建立OLAP Cube的最佳解释和理由,这一切只是关于性能和查询优化吗?

如果您能提供链接或指出建立数据立方体的最佳解释和理由,那将会很棒,因为我们可以从关系数据库中执行所有与数据立方体相同的任务,而且数据立方体可以更快地显示结果。还有其他任何解释或原因吗?

3个回答

13

使用立方体进行分析处理有许多好处:

  1. 速度。Olap仓库是只读基础设施,比其OLTP同类提供10倍以上的查询速度。参见 维基百科
  2. 多数据集成。在立方体中,您可以轻松使用多个数据源,并通过许多自动化任务(特别是使用SSIS时)进行最小化工作,以将它们整合为单个分析系统。参见ETL过程
  3. 最少的代码。也就是说,您无需编写查询。尽管您可以编写MDX - SSAS中立方体的语言,但BI Studio为您完成大部分繁重的工作。在我正在开展的一个项目中,起初我们使用SSRS为客户提供报告。查询很长,难以创建,需要数天才能实现。而他们的SSAS等效报告只花费了我们半个小时的时间,只编写了一些简单的查询来转换一些数据。
  4. 立方体提供报告和钻取功能,无需编写额外的查询。终端用户可以自动遍历维度,因为聚合已经存储在仓库中。这有助于立方体的用户只需遍历其维度即可生成自己的报告,而无需编写查询。
  5. 它是商业智能的一部分。当您创建一个立方体时,它可以提供给许多新技术,并在BI解决方案的实施中提供帮助。

希望这有所帮助。


3
如果您需要一个高层次的视图,请使用OLAP。假设您有数百万行详细说明了产品销售情况,并且您想知道每月的销售总额。
如果您需要底层详情,请使用OLTP(例如SQL)。假设您有数百万行详细说明了产品销售情况,并且想要检查某个特定日期的一个商店的销售情况以查找潜在的欺诈。
OLAP非常适合处理大量数字,但不适用于检查字符串值。...

谢谢Magnus的留言,但我在小数据集中找不到任何需要使用Cube的要求...对于大数据集,Cube是一个好东西。 - MSU

1

这有点像问为什么我们可以用汇编语言做所有事情,还要使用JAVA/C++;-) 除了性能之外,构建一个立方体给你MDX语言;这种语言比SQL具有更高级别的概念,并且在分析任务方面更好。也许这个问题提供了更多信息。

我的两分钱。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接