SQL Server数据库维度表和事实表概述
事实表
每个数据仓库都包含一个或者多个事实数据表事实数据表可能包含业务销售数据如现金登记事务
所产生的数据事实数据表通常包含大量的行事实数据表的主要特点是包含数字数据(事实)并且这些数字信息可以汇总以提供有关单位作为历史的数据每个事实数据表包含一个由多个部分组成的索引该索引包含作为外键的相关性纬度表的主键而维度表包含事实记录的特性事实数据表不应该包含描述性的信息也不应该包含除数字度量字段及使事实与纬度表中对应项的相关索引字段之外的任何数据
包含在事实数据表中的度量值有两中一种是可以累计的度量值另一种是非累计的度量值最有用的度量值是可累计的度量值其累计起来的数字是非常有意义的用户可以通过累计度量值获得汇总信息例如可以汇总具体时间段内一组商店的特定商品的销售情况非累计的度量值也可以用于事实数据表单汇总结果一般是没有意义的例如在一座大厦的不同位置测量温度时如果将大厦中所有不同位置的温度累加是没有意义的但是求平均值是有意义的
一般来说一个事实数据表都要和一个或多个纬度表相关联用户在利用事实数据表创建多维数据集时可以使用一个或多个维度表
维度表
维度表可以看作是用户来分析数据的窗口纬度表中包含事实数据表中事实记录的特性有些特性提供描述性信息有些特性指定如何汇总事实数据表数据以便为分析者提供有用的信息维度表包含帮助汇总数据的特性的层次结构例如包含产品信息的维度表通常包含将产品分为食品饮料非消费品等若干类的层次结构这些产品中的每一类进一步多次细分直到各产品达到最低级别
在维度表中每个表都包含独立于其他维度表的事实特性例如客户维度表包含有关客户的数据维度表中的列字段可以将信息分为不同层次的结构级
结论
事实表就是你要关注的内容
维度表就是你观察该事务的角度是从哪个角度去观察这个内容的
例如某地区商品的销量是从地区这个角度观察商品销量的事实表就是销量表维度表就是地区表