杭州社保数据库分析方案
东软解决方案技术中心
2009-4-9
杭州社保系统分析方案
第1章 目标 ............................................................................................................................................................................ 4 第2章 系统配置 .................................................................................................................................................................... 4 2.1 系统部署及网络拓扑图 ................................................................................................................................................ 4 第3章 数据采集方案和步骤 ................................................................................................................................................ 5 3.1 主机监控 ........................................................................................................................................................................ 5 3.2 数据库监控 .................................................................................................................................................................... 5 3.3 索引监控 ........................................................................................................................................................................ 5 3.4 数据空表空间碎片及表空间使用状况统计................................................................................................................. 6 3.5 表及索引碎片监控 ........................................................................................................................................................ 6 3.6 TOP SQL 监控 .............................................................................................................................................................. 11 3.7 临时表空间监控 .......................................................................................................................................................... 13 3.8 数据库运行日志分析 .................................................................................................................................................. 13 3.9 ORACLE SESSION会话监控 .......................................................................................................................................... 13 3.10 资源竞争定位 ............................................................................................................................................................ 14 第4章 数据分析 .................................................................................................................................................................. 15 4.1 主机资源消耗 .............................................................................................................................................................. 15 4.2 磁盘情况 ...................................................................................................................................................................... 16 4.3 内存 .............................................................................................................................................................................. 20 4.4 网络 .............................................................................................................................................................................. 22 4.5 内核运行队列 .............................................................................................................................................................. 22 第5章 ORACLE STATSPACK监控............................................................................................................................... 24 5.1 事务的回滚率比较高 .................................................................................................................................................. 24 5.2 SQL语句硬解析 ........................................................................................................................................................... 24 5.3 ORACLE等待事件问题 ................................................................................................................................................ 24 第6章 索引检查 .................................................................................................................................................................. 25 第7章 SQL 性能问题 ......................................................................................................................................................... 26 7.1 OLTP和OLAP业务混合使用同库问题 ................................................................................................................... 26 7.2 业务人员操作管理问题 .............................................................................................................................................. 26 7.3 消耗CPU的SQL ........................................................................................................................................................ 27 7.4 物理读过高的SQL ...................................................................................................................................................... 30 7.5 消耗临时表空间的SQL .............................................................................................................................................. 32 第8章 碎片情况 .................................................................................................................................................................. 33 8.1 表碎片情况 .................................................................................................................................................................. 33 8.2 表空间碎片情况 .......................................................................................................................................................... 33 第9章 热点对象统计 .......................................................................................................................................................... 34 第10章 其它问题 ................................................................................................................................................................ 34 第11章 总结 ....................................................................................................................................................................... 35
2
第12章 附录 优化结果对比............................................................................................................................................. 35 12.1 案例一 ........................................................................................................................................................................ 35 12.2 案例二 ........................................................................................................................................................................ 36
3
杭州社保系统分析方案 第1章目标
杭州金保自去年12月上线新农业务以来,系统性能一直不稳定,问题现象表现主要体现在几个方面:
a) 用户业务客户端表现为运行缓慢,高峰时段个别报表统计业务无法使用。 b) 服务器端表现为系统资空闲所剩无几。 所以,系统通过本次性能监控确认问题所在。
第2章系统配置
2.1系统部署及网络拓扑图
杭州金保系统架构采用的PB开发的,Oracle两层架构,目前数据库系统运行在P690 12CPU 24G内存上,没有灾备。处于单节点运行的方案,具有很大的风险。
第3章数据采集方案和步骤
3.1主机监控
在业务运行期,使用vmstat,iostat,mpstat,sar命令采集系统的资源 采用IBM nmon工具采集系统资源的使用情况。 以root用户执行nmon,采集数据 ./nmon -f -s 300 -c 288
生成文件名是
例如:每隔5分钟采样一个点,一共24小时,共采样288个点 300=5×60 288=60/5*24
4
3.2数据库监控
在业务运行期间,分别采用15分钟一个报告,采集2天报告。
3.3索引监控
确认系统是否存在无效的索引对象 SELECT index_name, table_name FROM dba_indexes WHERE status != 'VALID'
AND owner NOT IN ('SYSTEM', 'SYS') 监控Oracle索引的使用情况,具体方法如下: alter index
对某个INDEX开启监控后,就可以观察该INDEX是否被使用:
select index_name, monitoring, used, start_monitoring, end_monitoring from v$object_usage;
要注意的是,由于V$OBJECT_USAGE视图限制了只显示当前用户下被监控的索引的情况, 如果要取消对索引使用情况的监控,使用下列SQL: alter index
3.4数据空表空间碎片及表空间使用状况统计
select tablespace_name,
sqrt(max(blocks) / sum(blocks)) * (100 / sqrt(sqrt(count(blocks)))) FSFI from dba_free_space group by tablespace_name order by 1;
3.5表及索引碎片监控
SELECT OWNER,
SEGMENT_NAME TABLE_NAME, SEGMENT_TYPE,
5