一篇几年前数据仓库与商务智能的课程大作业,主要涵盖使用SQL Server BI进行数据仓库的设计和装载、多维分析。
另一作者:Katherine
分析工具:SQL Server BI 2008、Excel
关于数据仓库的理论和SQL Server BI 的使用推荐慕课网 西南财经大学李瑾坤副教授的商务智能。
原始数据:数据为浙江省温州市鹿城区2011年11月1日到20日公共自行车借还数据记录表,包括字段如下:
字段 | 示例数据 |
No. | 1 |
车号 | WZB000036 |
车号SN | 36 |
借出车站 | 区政府西 |
借出车站号 | 17 |
借车锁桩号 | 1 |
借车时刻 | 2012/11/1 5:59:38 |
归还车站 | 县前头 |
还车车站号 | 64 |
还车锁桩号 | 20 |
还车时刻 | 2012/11/1 6:03:42 |
用车时间 | 4 |
用车方式 | 会员卡借车 |
卡类型 | 普通会员卡 |
借车卡SN | 324408 |
1. 分析目标
(1)每个站点在不同时间段的借出次数、还入次数;
(2)每个时间段人们的用车频率,以小时、时段、天、月为单位;
(3)每辆车在一定时间段内的累计使用时长及总使用时长;
(4)每个桩在一定时间段内的累计使用频次及总使用次数;
(5)每个客户的用车偏好性:平均用车时间、高频用车时间点等。
2. 多维分析模型设计
设置度量值为用车时间、借车次数和还车次数,其中用车时间直接使用原始数据集中的“用车时间”属性,单位是分钟;借车次数、还车次数应用多维分析模型“事实表计数”功能实现。
维度包括站点、借车时间、还车时间、借车卡、自行车这5个维度。
维度 | 维度层次 |
站点 | 站点编号、车桩编号 |
借车时间 | 借车时刻、借车小时、借车时段、借车日期、借车月份 |
换车时间 | 还车时刻、还车小时、还车时段、还车日期、还车月份 |
借车卡 | 卡类型、卡号 |
自行车 | 自行车编号 |
注:借车时段及还车时段的划分如下:6~9时为上午,10~14时为中午,1~20时为下午,其余为夜晚。
3. 数据仓库设计
数据仓库包括一个事实表、四个维度表。
事实表:
记录编号仅作主键,不参与多维分析;自行车编号、车桩编号、借车卡号分别对应自行车、车桩、借车卡维度表;用车时间为一个度量值。
各维度表: