我正在建立一个基于NFL统计数据的数据仓库用于教育目的,因为我学习了这个范例 - 我有以下建模问题
球员可以在不同的年份为不同的球队效力,同样的教练可以在不同的职业生涯中指导不同的球队;球员也可能在不同年份也可能扮演不同的位置(罕见但可能)
对不同年份的球员,教练和球队之间的任务进行建模的最佳方法是什么?
我会将不同年份的名册信息存储在维度中吗?例如DimTeamRoster,它有一个TimeKey,TeamKey和CoachKey(因为一个团队只能有一个主教练),FactTeamRoster有一个TeamRosterKey,PlayerKey,Positionkey
或者我会有一个FactTeamRoster,它有一个TimeKey,TeamKey,PlayerKey,PositionKey?但那么这种方法是否有意义,因为这个事实表并不真正存储任何措施,它只是存储当年的作业
每种方法的其他一些可能的解决方案和优点/缺点/正确性是什么?
答案 0 :(得分:2)
首先,我会这样做。
dimRole
可能看起来像
RoleKey RoleName RoleGroup
---------------------------------------
1 quarterback player
2 tackle player
3 head coach coach
4 assistant coach coach