需要维度建模帮助 - 平面表格星型模式

时间:2015-10-27 14:11:06

标签: sql-server ssas dimensional-modeling star-schema

我一直在阅读数据仓库工具包第2版,最近完成了SQL Server Analysis Services课程。

这篇文章的目的是帮助我解决我遇到的设计问题

我正在尝试设计一个将在SSAS中实施并构成报告平台基础的星型模式

我们使用的基于事务的系统具有以下表/字段(带有示例虚拟数据)

“政策事实表”

  
      
  • 行名示例数据
  •   
  • 政策ID 112
  •   
  • 政策状态X
  •   
  • 成立日期为2013年4月7日
  •   
  • 续订日期为2014年4月6日
  •   
  • 政策调整计数1
  •   

此表包含每个策略的最新策略信息,因此“策略ID”是唯一的 开始日期也是独一无二的 使用“策略ID”&的密钥从“策略事务事实表”中复制其他信息。 “政策调整计数” 每次政策更新时都会更新续订日期(意味着我可以从“政策交易事实表”中提取“结束日期”并向其添加1天)

“政策交易事实表”

  
      
  • 行名示例数据
  •   
  • 政策ID 112
  •   
  • 政策调整计数1
  •   
  • 开始日期为2013年4月6日
  •   
  • 截止日期为2014年4月5日
  •   
  • 交易编号4491
  •   
  • 交易类型402
  •   
  • 政策状况C
  •   
  • Gross_Premium 12345.67
  •   
  • 保险费税额26.78
  •   
  • Scheme_id STDF015N
  •   
  •   

此表包含在政策级别执行的所有调整。

“关于政策交易事实表的人”

  
      
  • 行名示例数据
  •   
  • 政策ID 112
  •   
  • 驱动程序ID 2000000084
  •   
  • 交易编号4491
  •   
  • 开始日期2003年4月6日
  •   
  • 日期于1937年12月12日加入
  •   
  • 退出日期为2014年2月9日
  •   
  • 个人保费1234.56
  •   
  •   

此表包含政策中受交易影响的所有人

“政策交易事实表”中的一条记录将链接到“政策交易事实表中的人”中的一条或多条记录

我很难在星型模式

中将这两个表链接在一起

我很确定我需要一个桥接表来链接事实表。

如果我专门查看“政策交易事实表”和“政策交易事实表上的人”

使用“策略事务事实表”中的“策略ID”和“事务编号”的密钥,并将其加入“策略事务事实表中的人员”,我可以看到策略中的所有人

非常感谢一些指导

感谢您抽出宝贵时间阅读本文。

感谢您的第一个答案:谢谢,非常感谢。 “政策交易”中附有指标&政策交易中的“政策表上的人”

我目前必须在SQL中设置子句来计算特定时间范围内的“有效”策略的数量,每个策略都有溢价,ipt(保险费税),附加的回扣金额

“政策桌上的人”:

由于政策上有所有人,我可以汇总driver_id以生成政策上的人数,源系统也会分解他们的个人保费,我希望可以用来提取“保费”< / p>

还有一些政策指标显示了他们所拥有的政策类型,编码为:MODP500A - 所以这将链接到一个维度表,以便对其进行解码。

1 个答案:

答案 0 :(得分:1)

您不会在星型模式中链接事实表。你把它们弄平了。

换句话说,不是通过桥接器或外键将Policy表与People表相关联,而是为策略中的每个人(Driver1,Driver2,Driver3等)提供一个事实列。

但我怀疑这些表中的任何一个是否都是事实表的好候选者,因为除了政策调整计数之外,我没有看到其中的任何指标。这看起来更像是策略维度和人员维度,事务表可能是唯一的事实表。

根据经验,SSAS项目的结构应该由您的报告需求驱动。从您想要报告的内容开始,不要构建任何不能满足这些需求的内容。