将存储过程执行速度提高了30倍

来源:互联网 发布:获取windows权限工具 编辑:程序博客网 时间:2024/05/02 02:04

        客户要一个统计,挺复杂的。要从一个有260万条数据的表里查。需要对全国大约360家加工厂进行统计。最开始,每次对加工厂的统计都直接从260万数据里查,每个加工厂还要查五次,慢的要命,估计最快要执行6小时。一天就执行一个存储过程了。

        客户来是很能替我们考虑的,说,那把一天统计一次改为一周一次吧。虽然客户这么说了,我们也不能就这么认了啊。就想想有什么办法能执行的快些呢?经过分析,问题就出在对260万数据的查询,分组上了。

        在分析结果之上,将每个加工厂都从260条查改为,最先将所有的加工厂数据从260万条数据中查询,分组到一个临时表中,然后每次从这个表(不会超过1万条)里查。一试,效果还算令人满意,单是加工厂统计的速度提高了30倍。

         统计数据问题算是解决了,还剩下显示的问题了。我将统计的结果生成XML文档,保存到Clob字段中,然后,可以将XML生成HTML显示或Excel下载。在Windows+Tomcat上,一切都没有问题,但是移到AIX + WebSphere上就会报异常了。晕死了,查中。。。。

 
原创粉丝点击