整合 DB2 与 AIX 的 WLM 功能进行工作负载管理
2010-09-29 00:00:00 来源:WEB开发网 # ps -m -o THREAD,class -p 254084|awk '{print $1" "$2" "$3" "$4"
"$13" "$14}'
图 4. 查看 db2sysc 进程的线程信息
这里我们可以看到两个 WLM 的服务类的映射已经成功。
接下来检验 CPU 资源限制是否成功,使用 testusr 用户运行比较消耗 CPU 的命令,不管启动多少个并发(当然在这里由于我们的阀值限制了只能同时运行两个并发),CPU 始终维持在 10% 一下。
图 5. CPU 使用情况
查看原图(大图)
(查看大图)
注意,这个测试过程当中没有其它任何负载,我们可以看到 db2sysc 进程占用的 CPU 资源也基本不超过 10%。
好了,CPU 方面已经测试通过,接下来该看看 DB2 WLM 的阀值效果了。
并发活动工作
由于这里不限制连接数,我们这里首先用 testusr 用户建立了三个会话,然后逐一运行一个比较长时间的 SQL 命令,到第三个运行时返回 SQL4712N 错误:
SQL4712N The threshold "TH_CONN" has been exceeded. Reason code = "6".
SQLSTATE=5U026
闲置时间
闲置时间的最小颗粒是 5 分钟,如果设置的值不是 5 分钟的整数倍的话会自动选择一个最接近的 5 分钟的整数倍。当闲置时间超过 5 分钟,再次运行命令的话:
SQL1224N The database manager is not able to accept new requests, has
terminated all requests in progress, or has terminated your particular request
due to an error or a force interrupt. SQLSTATE=55032
排序空间
在运行一个少量数据的排序的话是没有问题的,但是排序空间一旦超过 10MB 的话便会报错(这里将数据删掉了)。
$ db2 "select * from db2inst1.testab order by dept,id
fetch first 10 rows only"
ID NAME DESC DEPT
--------- ----------- ----------- --------
...
...
...
...
10 record(s) selected.
$ db2 "select * from db2inst1.testab order by dept,id"
ID NAMEDESCDEPT
----- -------- ---------- ------
SQL4712N The threshold "TH_QUERIES_TMP" has been exceeded.
Reason code = "10". SQLSTATE=5U026
总体来看,将 DB2 WLM 和 AIX WLM 结合起来以后,基本上可以满足在工作负载管理方面的绝大部分的需求。而且从效果上来说的话确实能够达到我们的要求。
- ››AIX 下 FTP 服务配置方法
- ››db2 对float类型取char后显示科学计数法
- ››DB2中出现SQL1032N错误现象时的解决办法
- ››DB2 锁升级示例
- ››db2诊断系列之---定位锁等待问题
- ››db2 命令选项解释
- ››DB2 最佳实践: 使用 DB2 pureXML 管理 XML 数据的...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 9.5 SQL Procedure Developer 认证考试 735 准...
- ››DB2 基础: 表空间和缓冲池
- ››DB2 XML 编程,第 1 部分: 理解 XML 数据模型
更多精彩
赞助商链接