在我建立的在线订票系统中,我需要为客户添加订单的实时分析报告。使用非规格化数据库表进行分析数据
重要的订单数据分为多个表格(客户,订单,line_items,package_types,票据)。每个表格都包含对我的客户可能需要的任何报告都不重要的附加数据。
我正在考虑在非规格化报表中将每个订单记录为单独的订单项。我试图弄清楚这是否合理。
通常,我为报表运行的查询只需要一次连接两个或三个表。每个表格都添加了适当的索引。
将所有订单数据编译成只包含必要的报表列的表是否有意义?
该应用程序建立在Ruby on Rails 3上,DB是Postgresql。
编辑:这样做的目标是尽可能快地为用户呈现浏览器中的数据。
从规范化数据获取报告的速度有多慢? – Mark
我还没有做过任何确切的基准测试,但只需计算从开始请求到完成时的秒数,大约需要20秒或更长时间才能从规范化数据呈现页面。这比我想要的要长一点。 –