Sql server 当每个报告输出都是唯一的(如调查)时,如何构建数据仓库?
我使用SQLServer2008R2存储来自Web应用程序的调查问题和答案 出于报告性能的原因,我正在考虑在事务数据库之外创建一个数据仓库 我需要的报告相当简单:Sql server 当每个报告输出都是唯一的(如调查)时,如何构建数据仓库?,sql-server,data-warehouse,Sql Server,Data Warehouse,我使用SQLServer2008R2存储来自Web应用程序的调查问题和答案 出于报告性能的原因,我正在考虑在事务数据库之外创建一个数据仓库 我需要的报告相当简单: 每个列标题代表一个调查问题 每一行代表问题的答案 两种不同调查的示例: 由于每项调查都是独一无二的——作者可以提出他们想要的任何问题并得到不同的答案——将这些结果存储在一个典型的仓库模型中有意义吗?如果是的话,你会如何建议设计 注意:每个调查都与自己的ID关联 谢谢 因为这是一个数据仓库,所以我要回答这个事实。不需要进行规范化
- 每个列标题代表一个调查问题
- 每一行代表问题的答案
谢谢 因为这是一个数据仓库,所以我要回答这个事实。不需要进行规范化,因为您只需要插入和选择
Answer
------
Answer Text
Question Text
Survey ID
主键是(答案、问题、调查ID)。在(问题,调查ID)上还有另一个唯一的索引
如果调查的日期和时间可用,我会在答案表中添加一个调查时间戳
此表将回答以下问题
- 确定的答案多久给出一次
- 某些问题多久被问一次
- 对某些问题给出特定答案的频率是多少
Survey
------
Survey ID
...
如果没有其他调查信息,则不需要此表
Question
--------
Question ID
Survey ID
Question Text
...
问题ID是一个自动递增的整数。测量ID是返回测量表的外键
Answer
------
Answer ID
Question ID
Answer Text
...
答案ID是一个自动递增的整数。问题ID是返回问题表的外键
此表格设计将回答以下问题
- 调查是什么样的