什么是OLAP的用途?

时间:2010-07-08 12:02:31

标签: olap

OLAP数据访问如何比OLTP更快?

3 个答案:

答案 0 :(得分:6)

通过使用多维数据模型,OLAP可以非常快速地访问数据。 如果您有大量数据并且报告生成非常长(例如几个小时),则可以使用OLAP来准备报告。然后,对已处理数据的每个请求都会很快。

答案 1 :(得分:6)

OLAP基本上是只读数据存储。 Classic OLAP是一个数据仓库或数据集市,我们可以将其作为OLAP多维数据集使用。从概念上讲,您可以将OLAP多维数据集视为巨大的Excel数据透视表。这是一个具有边(维)和数据交叉(事实)的结构,没有任何联接。

数据结构是OLAP查询比OLTP快得多的原因之一。另一个原因是聚合的概念,它存储在叶子(底部)以上的交叉点。一个例子如下:

您可以通过以下维度(时间,产品,客户)为每个销售额加载一个多维数据集,其中包含有关销售的事实(即多少美元,多少单位等),每行(或事实)等等。您加载每个维度的级别,例如每天和每个客户的销售等等......都是叶子数据。当然,您经常需要查询聚合值,即MONTH的销售额,某个城市的客户等...

这些聚合可以在查询时计算,也可以预先聚合并存储在多维数据集加载中。在查询时,OLAP多维数据集使用存储和计算聚合的组合。与OLTP索引不同,可以使用PARTIAL聚合。

除此之外,大多数OLAP多维数据集默认设置了大量缓存,大多数也允许进行非常精细的缓存调整(预加载)。

另一个考虑因素是越来越多的供应商提供相对最近的内存中BI(或OLAP)。显然,如果更多的OLAP数据在内存中,那么生成的查询将比传统的OLAP更快。要查看内存中多维数据集的示例,请查看有关SQL Server 2012 BISM的slide deck

答案 2 :(得分:1)

您需要对OLAP是什么以及为什么/何时需要使用它进行一些研究。首先尝试搜索Google for OLAP,然后阅读此维基百科文章:

http://en.wikipedia.org/wiki/Online_analytical_processing