WAS 7.0关于千万级数据优化问题

前一阵,系统经常挂起,后排查发现为数据库中的很多表的数据量过大并且代码、sql有问题。
表数据量超过千万,并且每天以30~40W的数据量再增加,想请教各位大侠怎么来进行优化,无论是数据库、代码、was各方面的都行。
表查询语句都是类似最简单的,按userid或deptid、或者创建时间查询。


系统 在线访问量为2000人
服务器 :红旗linux4 、32G内存、 8CPU
Was7.0
DB2 V9.7
jdk6
参与16

14同行回答

JZhangJZhang系统工程师亿阳信通
代码中可以对语句进行以下优化:1.如果没有使用绑定变量的,可以使用绑定变量。2.根据需要进行查询,例如表中有十几,或者几十列,而你只需要查询返回几列的结果,那么最好在sql语句中进行控制,不要使用类似与 select * 这样的操作。数据库方面:索引建立的时候,如果表过大,索引创建时需...显示全部
代码中可以对语句进行以下优化:
1.如果没有使用绑定变量的,可以使用绑定变量。
2.根据需要进行查询,例如表中有十几,或者几十列,而你只需要查询返回几列的结果,那么最好在sql语句中进行控制,不要使用类似与 select * 这样的操作。
数据库方面:
索引建立的时候,如果表过大,索引创建时需要考虑到索引创建带来的代价,不要一味的追求查询速到胡乱创建索引 ,最后导致DML操作变慢。
页面展示方面:
如果有默认展示的地方,可以考虑默认展示的数据量是否可以进行调整。收起
软件开发 · 2014-05-13
浏览1195
cosmicbugscosmicbugs软件开发工程师思翰科技
回复 13# guansnow 现在还在观察中,做了以下工作1、把一些容易造成挂起的代码精简或重新梳理业务。2、加索引3、把数据量大的表分表、分区。显示全部
回复 13# guansnow

现在还在观察中,做了以下工作
1、把一些容易造成挂起的代码精简或重新梳理业务。
2、加索引
3、把数据量大的表分表、分区。收起
软件开发 · 2014-05-05
浏览1188
cosmicbugscosmicbugs软件开发工程师思翰科技
回复 8# 请叫我航哥 索引有加。现在考虑的是在数据库上将表进行分区。显示全部
回复 8# 请叫我航哥


索引有加。现在考虑的是在数据库上将表进行分区。收起
软件开发 · 2014-04-18
浏览1373
cosmicbugscosmicbugs软件开发工程师思翰科技
回复 3# guansnow     感谢提醒,这两天做个压力测试!显示全部
回复 3# guansnow


    感谢提醒,这两天做个压力测试!收起
软件开发 · 2014-04-17
浏览1357
cosmicbugscosmicbugs软件开发工程师思翰科技
回复 5# 请叫我航哥 1、 之前挂起是因为程序代码及sql语句有问题导致的。2、现在db2隔离级别是RS。3、发这个贴是想问一下关于最基本的代码就sql查询优化怎么实现,现在没有头绪。系统现在经常会卡在一个列表页面上,语句很简单根据userid、status、createtime查询,但是早上客...显示全部
回复 5# 请叫我航哥


1、 之前挂起是因为程序代码及sql语句有问题导致的。
2、现在db2隔离级别是RS。
3、发这个贴是想问一下关于最基本的代码就sql查询优化怎么实现,现在没有头绪。系统现在经常会卡在一个列表页面上,语句很简单根据userid、status、createtime查询,但是早上客户上班高峰期时并发量达到1500,特别的慢,过了9点就正常了。收起
软件开发 · 2014-04-17
浏览1061
cosmicbugscosmicbugs软件开发工程师思翰科技
自己先来一个顶顶,欢迎各位路过的大侠帮忙看看,提提建议显示全部
自己先来一个顶顶,欢迎各位路过的大侠帮忙看看,提提建议收起
软件开发 · 2014-04-16
浏览535

    提问者

    cosmicbugs
    软件开发工程师思翰科技

    相关问题

    相关资料

    相关文章

    问题状态

  • 发布时间:2014-04-16
  • 关注会员:1 人
  • 问题浏览:9558
  • 最近回答:2014-05-13
  • X社区推广