ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 恼人的性能调优

恼人的性能调优

原创 Linux操作系统 作者:monica_yaotf 时间:2011-05-23 16:54:43 0 删除 编辑
   自从进入这家公司以来,自己做的事情基本都是性能调优相关的。经过了这大半年的工作,感受颇多。
1.性能调优有时候很简单,只需要一个索引搞定
2.有时候调优很难,要和业务挂钩,在大数据量的情况下,即使再好的索引也没有用,尤其是业务需求不合理的情况下(此处的不合理是对数据来讲的,或许从业务上讲是合理的)。、

这几天看的一个调优就是一张大表,虽然只有200多万的记录数,但是由于表内包含了varchar2(3500)的大字段,使得这张表占了3.5个g的物理空间。
而且数据量严重倾斜
                 类型1              类型2        记录数
1 1 2028480
1 2 553
1 3 102
2 1 48439
2 2 278
2 3 21
3 2 1
4 2 7
所以当用户输入参数type1=‘1’  and type2='1'的时候,性能尤其的差,而且用户的输入没有其他任何条件,还要排序,显示前50条记录。每次这个查询都要30+s,有时候甚至要50+s,很让人郁闷。没有其他办法,因为必须走全表扫描。
而当用户输入条件是type1=‘2’  and type2='2'的时候,性能就极其好了。更可怕的是,这条sql用到了首页显示内,每次有用户访问网站,都会发送这条sql,导致了大量排队,协调的排队现象很严重。严重影响了用户的体验。

这种情况,要么和用户协商,增加查询条件,要么就要对表进行改造,拆分出需要在首页显示的内容,建立小表。这样可以将查询响应时间缩短到2s+,或者更短。
但是在没有其他条件的情况下,如果数据量继续增加的话,后期的问题还是很严重,除非及时清理这张小表。但是这种做法还有一个不好的地方,就是需要修改程序代码。

恼人啊。。。。。。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7353848/viewspace-696084/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-03-27

  • 博文量
    73
  • 访问量
    298773