SSAS表格模型中的角色扮演维度

首先,我想解释一下角色扮演维度的真正含义。然后,我将说明您可以在SSAS表格模型中实施该方法的方式。

当您将维度多次链接到事实表以获取逻辑上独特的角色时,您正在使用角色扮演维度。

关键点是:

1.       您要将事实表多次链接到维。通过将事实表中的多个外键链接到维表中的单个键来定义关系。

2.       每个链接代表一个角色或概念

最受欢迎的角色扮演维度是DimDate和DimTime。是否要查看如何在Power BI中实现角色扮演维度,请单击 这里这里.

注意:该示例来自SQL Server 2012的Microsoft“ AdventureWorksDW”,可能与您自己的数据仓库设计不同。

例如,在销售系统中,您具有诸如FactInternetSales事实表之类的东西,该表具有指向DimDate或DimAddress的多个链接或关系,以实现不同的概念,例如“订购日期”,“装船日期”和“到期日期”。

如您所见,以上所有列显然表示日期的不同含义。在数据仓库设计中,您将看到以下内容:

角色扮演维度01

尽管在关系数据库层中这绝对可以,但是在表格模型中不允许这种关系,那么我们应该怎么做?

继续阅读 “SSAS表格模型中的角色扮演维度”

使用递归公用表表达式(CTE)创建简单的日期维

在这篇文章中,我将解释如何创建一个简单的日期维度以在数据仓库和BI解决方案中使用它。因此,如果您需要一种快速简便的方法来制作一个支持最常用的日期元素(例如,

·         整数日期键

·         不同的日期格式

·         25美分硬币

·         月份名称

·         周数

·         一周中的天

·         一年中的一天

·         是月底的一天

·         不可用(不适用)行

由于许多人仍在使用SQL Server 2008及更早版本,因此我放置了支持SQL Server 2008的代码。 以及SQL Server2012。但是,我评论了2008年的内容。

继续阅读 “使用递归公用表表达式(CTE)创建简单的日期维”

深入研究SQL Server 2012列存储索引

SQL服务器 11.0版本(代码名为“ Denali”)引入了一种新的数据仓库查询加速功能,该功能基于一种称为列存储的新型索引。列存储索引已在SQL Server 2012中正式宣布。它基于xVelocity内存优化技术工作,可显着提高数据仓库查询性能。由于数据仓库,决策支持系统和商业智能应用程序发展非常迅速,因此我们需要能够快速,准确地读取和处理非常大的数据集,并将其转化为有用的信息和知识。列存储索引技术特别适用于数据仓库数据集。它显着提高了通用数据仓库查询的性能。

继续阅读 “深入研究SQL Server 2012列存储索引”