数据仓库专题(11)-可以作为维度表使用的事实表
2015-09-01 14:23
274 查看
KDT#13 可以作为维度表使用的事实表
事实表从粒度的角度分为三种,分别是交易粒度事实表、周期快照事实表和累计快照事实表。交易粒度事实表能提供某个确切时刻的描述信息。以银行帐户中保存的客户信息为例来说,代理机构会周期的更新客户的名称、地址、电话号码、客户分类、信用等级、风险等级及其他描述性信息。建立的交易粒度事实表如下所示:
变更日期(FK)帐户号(SK)
代理(FK)
客户信息变更类型(FK)
帐户号(NK)
名称(文本事实)
地址(文本事实)
电话号码(文本事实)
客户分类(文本事实)
信用等级(非可加性数字事实)
风险等级(非可加性数字事实)
...
这是一个典型的记录的度量事实都是文本型描述信息的事实表。这样的事实表和维度表之间的区别并不明显。
这个事实表中有三个是关联到普通维度表的外键,分别是变更日期、代理和交易类型。帐户号(NK)是帐户的自然键,是帐户的唯一标识。帐户号(SK)是帐户的代理键,也是这个事实表的主键,它标识了这个事实表中的每一次变化。
我们可以将该事实表中的帐户号代理键做TYPE 2型缓慢变化维处理,并将它关联到其他事实表作为外键。举例来说,我们除了收集帐号本身变动信息外,还会收集存取款情况和帐号余额信息,并建立事实表如下:
交易日期(FK)
帐户号(SK)
地点(FK)
交易类型(FK)
数额(可加性事实)
帐户余额(半可加性事实)
对后一个事实表进行分析,其中的一条记录可以准确的对应到前一张事实表中相应时点的帐号信息上,即我们可以得到每一次交易时点时帐户对应的客户信息。我们会发现,前一张事实表和维度表并没有什么差别。
相关文章推荐
- hdu 2001 计算两点间的距离
- Android ViewPager Demo
- 学习日志---递归、非递归,迷宫问题
- c++ const用法总结
- Kmeans聚类算法 java精简版设计实现编程
- Spring MVC配置(备忘)
- CGContextAddArcToPoint和CGContextAddArc
- flex如何监听自动产生的滚动条呢,是个问题
- Mysql--初探
- web 记住密码
- ubuntu14.04 访问windows目录的方法 mount.cifs方式 取代smbfs方式
- HDU1020 - Encoding (模拟)
- flex滚动条疑难问题
- RAID技术介绍和总结
- 问题--pip安装软件出现下面的报错
- 云计算设计模式(六)——命令和查询职责分离(CQRS)模式
- js标点符号全局匹配
- Linux命令查看X86平台 ARM平台上可执行文件与库的依赖关系
- 十六进制的颜色值转成RGB UIColor
- python闭包实现,匿名函数的实现