SSAS -数据在三个地方



对DW概念和SSAS不熟悉。我读了很多关于规范化关系数据库最适合OLTP的文章,因为典型的工作负载是许多单事务批。反规范化通常更适合DW/BI应用程序,因为用于报告的查询本质上更基于批处理…还有其他原因,我现在想不起来了。

这听起来像是建议说要创建一个非规范化模型并从基本关系模型填充它,然后从非规范化模型构建您的多维数据集。假设您使用的是MOLAP存储类型,那么多维数据集将在它在后台构建的多维模型中存储和增量更新数据。

所以现在我们基本上存储了三次相同的数据!

我没看错吧?为什么我们需要中间的非规范化表呢?它不能优化报告查询,因为这些查询是针对多维SSAS数据存储运行的。为什么不直接根据定义基本上是关系数据库视图的dsv构建多维数据集呢?

多维模型需要关系型模型在星型模式(也就是您所说的"非规范化模型")中可用,以便加载数据。在许多情况下,还需要进行一些处理,例如组合来自不同来源的数据,保留用于报告的数据的时间超过OLTP世界所需的时间,保留历史视图(如旧的区域或部门结构)以供分析,这些视图在OLTP世界中是不必要的,因此会被覆盖。因此,在许多情况下,这个中间步骤是有意义的。您可能还希望有明确的时间划分,即总是报告完整天(或在某些情况下,数月)的数据,并且不提供最后一天的数据,而不提供最后一天的数据,这使得比较一天的数字比比较今天的销售数据更容易,例如只包含截至10点的数据与昨天全天的销售。

在一些简单的情况下,中间关系数据结构不需要在物理上可用。几天前,我准备了一个原型立方体,其中星型模式只是源数据上的一组视图。当然,在这种情况下,数据只能以原始源形式和多维数据集中的形式在物理上可用。源数据的结构并没有使视图效率低下,因此数据加载到多维数据集对于原型来说足够快。

最新更新