db2有以下几种工具,snapshot,db2pd,db2top,
db2mtrk,事件监视器。我们使用不外乎从两个方面出发,实时监控,查找过去时间段内出血的性能问题,其中有些工具对系统有一定影响,客户比较担心。我大概总结了以下几点:
监控工具使用说明及对系统性能的影响:
通过db2自身的监控工具,可以达到实时收集有问题的应用sql,系统出现问题时的症状,这部分工具包括snapshot,db2pd,db2top,另外要想收集过去一段时间(如凌晨两点)的 影响系统性能的sql语句,则使用事件监视器可以达到此目的,因为snapshot,db2pd,db2top这些工具都是实时的。以下是工具特点分析:
1 snapshot,实时收集性能数据,大约使系统cpu负载提高5%,cpu资源丰富,可以放心使用。
2 db2pd 实时收集性能数据,几乎对系统无影响,但仅限于在系统出现问题时候使用,才能很好体现其价值
3 db2top,实时收集性能数据,并且能够直观的看出消耗资源的sql语句,内存,bufferpool资源消耗等情况。该工具在多分区数据库系统下会对性能造成严重影响。
4 事件监视器,可以设置收集某一段时间的统计数据,信息存放于表中,通过sql去读取,缺点是收集信息期间产生大量的文件,且当系统本身有问题,收集信息也越多,对系统影响比较大。可以根据CPU资源,表空间是否十分充裕决定使用,且对于过去的一段时间信息收集有意义----即明确要收集某个时间段对系统有影响的系统信息。
5 db2mtrk工具,收集内存使用信息,该工具主要作用看高水位线和实际配置之间是否接近,如果高水位逼近了实际数据库参数配置指定的值,说明可以考虑增大参数 util_heap_sz
综合以上分析:可以放心使用的工具是:db2pd,db2mtrk;其中要分析系统性能权衡使用的是snapshot,db2top和事件监视器,我个人的看法是只要系统资源(CPU,系统内存,DB2内存)充裕,可以发放心使用snapshot,db2top(不在多分区情况下使用),而时间监视器需要分析监视期间业务,系统资源(表空间,CPU)。
求DB2专家指点点评
收起