【问题标题】:How to report on sparse areas of sparse fact table如何报告稀疏事实表的稀疏区域
【发布时间】:2011-10-09 21:51:58
【问题描述】:

源系统通过报告缺勤事件来跟踪学区的学生出勤情况。可以通过检查三个数据集来确定任何特定日期的出勤率:校历、学生注册和缺勤。

在任何给定的上课日,在校学生的出勤人数通常远大于缺勤人数,因此这种方法显着减少了为跟踪出勤而存储的记录数量。

我正在尝试确定在维度模型中表示日常出勤率的正确方法。最明显的方法是创建一个无事实表,其中包含每个学生每上学日的粮食,以及具有出勤和缺勤原因的值的出勤维度。使用 OLAP 非常简单,但缺点是事实表的大小。

例如,对于 30,000 名学生和 188 个上学日,意味着每年大约有 50 万条记录(如果这似乎不足以成为问题,那么请考虑一个必须报告每个期间的出勤率的示例而不是每天)。将此与仅记录缺勤的事实表进行对比,并且数量要小得多。但是,如果我这样做,那么我不确定如何构建聚合每日出勤事实的多维数据集。

使用的特定 OLAP 技术是 SQL Server Analysis Services 2008 R2。有什么想法吗?

【问题讨论】:

  • 1) 你是什么意思“每个学生每个上学日都很棒”; 2)定义周期?
  • “great”是一个错字——我的意思是“grain”。我已经更正了。课时和上学时间一样——第一节课是当天的第一节课,第二节课是第二节课,以此类推。

标签: olap business-intelligence dimensional-modeling


【解决方案1】:

如果您使用两个事实表:一个用于当前期间(例如上个月),另一个用于历史数据(仅记录缺勤) - 我想用户(例如教师)不需要有关某个特定学生的出勤信息5 个月前当天的第二节课,但他们可能需要最后一周/一个月的这些信息。

【讨论】:

    猜你喜欢
    • 2021-01-21
    • 1970-01-01
    • 2015-12-05
    • 1970-01-01
    • 2018-08-22
    • 1970-01-01
    • 2012-06-20
    • 2017-03-26
    • 2017-03-31
    相关资源
    最近更新 更多