公司原有一个报表模块,但是效率比较低,究其原因是我们的业务数据比较多,有些逻辑也不是很简单,所以每次做数据统计的时候速度都会比较慢。
          
        我想找一套数据处理方案,能达到对数据的准确性和高效性的统一。我们试过预处理机制,但是预处理会带来数据的不准确性。为了满足用户的要求,有些地方还是采用以前的老方式,就是每次用户查看报表的时候都去做一次统计,统计的项目比较多,就会比较慢。在我们的业务数据不断增长的情况下,这个报表就会越来越慢。
      
        我现在有一个想法就是在维护被统计的源数据的模块去做统计,每次的统计都被写在一些专用的报表数据表中,这样报表系统只需要去简单的读取数据就行了,而不需要报表模块用复杂的查询语句去做统计。不知道这样的方式 会不会有其他的问题,可行性又有多大。         各位高手有什么好的意见或者开发经验,来一起讨论下,小弟不胜感激!

解决方案 »

  1.   


    如果报表统计部分使用的比较频繁,还是建议您专门做一个库用于报表和统计,把源数据进行清洗,转换。就像建一个数据仓库一样,然后基于这个库进行查询。当然那你就要考虑数据的增量更新了。
      

  2.   

    我想 数据统计的工作 由 操作源数据的 模块 来做 ,但是 众多的 统计类型 会使得 代码耦合性 很高。不好维护!  
         人好少!