Gar*_*rke 6 business-intelligence olap
源系统通过报告缺勤事件来跟踪学区的学生出勤情况。可以通过检查三个数据集来确定任何特定日期的出勤率:校历、学生注册和缺勤。
在任何给定的上课日,在校学生的数量通常比缺勤的学生数量多得多,因此这种方法显着减少了用于跟踪出勤情况的记录数量。
我正在尝试确定在维度模型中表示每日出勤率的正确方法。最明显的方法是创建一个无事实表,其中包含每个学生每个上学日的谷物,以及具有出勤和缺勤原因值的出勤维度。这对于使用 OLAP 非常简单,但缺点是事实表的大小。
例如,对于 30,000 名学生和 188 个上课日,意味着每年大约有 50 万条记录(如果这看起来还不够大,那么请考虑一个示例,其中必须报告每个时期的出勤情况,而不是每个日)。将此与仅记录缺勤且数量要小得多的事实表形成对比。但是,如果我这样做,那么我不确定如何构建汇总每日出勤情况的多维数据集。
正在使用的特定 OLAP 技术是 SQL Server Analysis Services 2008 R2。有什么想法吗?
这是人力资源系统的常见设计模式,因此这种方法有很多先例。
您会发现SSAS使用的格式非常有效地存储此类数据,因此数据量不会成为重大问题。我曾在使用 AS2000 的相当旧的硬件上看到过在行数约为 3 亿的 HR 立方体上完成此操作。现代硬件上的 2008R2 应该不会有问题。