源系统通过报告缺勤事件来跟踪学区的学生出勤情况。可以通过检查三个数据集来确定任何特定日期的出勤率:学校日历、学生入学率和缺勤率。
在任何给定的上课日,在校学生的出勤人数通常远大于缺勤人数,因此这种方法显着减少了为跟踪出勤而存储的记录数量。
我正在尝试确定在维度模型中表示日常出勤的正确方法。最明显的方法是创建一个无事实表,其中包含每个学生每上学日的粮食,以及具有出勤和缺勤原因的值的出勤维度。使用 OLAP 非常简单,但缺点是事实表的大小。
例如,对于 30,000 名学生和 188 个上学日,意味着每年大约有 50 万条记录(如果这似乎不足以成为问题,那么考虑一个示例,其中必须按期间而不是按时间报告出勤率天)。将此与仅记录缺勤的事实表进行对比,并且数量要小得多。但是,如果我这样做,那么我不确定如何构建聚合每日出勤事实的多维数据集。
正在使用的特定 OLAP 技术是 SQL Server Analysis Services 2008 R2。有什么想法吗?