《DB2性能管理与实战》——2.3 STMM介绍

简介:

本节书摘来自异步社区出版社《DB2性能管理与实战》一书中的第2章,第2.3节,作者: IBM中国开发中心(CDL) 信息管理软件开发部,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.3 STMM介绍

DB2性能管理与实战
在DB2 V9以后,引入了一种新的内存自动调优特性,叫做自调内存管理(STMM)。它通过自动设置几个内存配置参数值的方式,简化了内存配置任务。内存自动调优一旦启动,就能够在内存使用者(包括排序、程序包缓存、锁定列表和缓冲池等)之间动态分配可用内存资源。

调整器在DATABASE_MEMORY配置参数所定义的内存限制范围内工作。此参数的值也可以自动调整。启用自调整功能(将DATABASE_MEMORY的值设置为AUTOMATIC)之后,调整器将确定数据库的整体内存需求,并根据当前数据库需求来增加或减少分配给数据库共享内存的内存量。例如,如果当前数据库需求很高,并且系统上有足够的可用内存,那么将为数据库共享内存分配较多的内存。如果数据库内存需求下降,或者系统上的可用内存量变得过低,那么将释放一些数据库共享内存。

如果DATABASE_MEMORY配置参数未设置为AUTOMATIC,那么数据库将使用对此参数指定的内存量,从而根据需要在内存使用者之间分配内存。可以通过两种方法来指定此内存量:将DATABASE_MEMORY设置为某个数值将其设置为COMPUTED。在后一种情况下,总内存量基于数据库启动时的数据库内存堆初始值之和。

还可以对内存使用者启用自调整功能,如下所示。

boll 对于缓冲池,使用ALTER BUFFERPOOL或CREATE BUFFERPOOL语句(指定AUTOMATIC关键字)。

boll 对于锁定内存,使用LOCKLIST或MAXLOCKS数据库配置参数(指定AUTOMATIC值)。

boll 对于程序包高速缓存,使用PCKCACHESZ数据库配置参数(指定AUTOMATIC值)。

boll 对于排序内存,使用SHEAPTHRES_SHR或SORTHEAP数据库配置参数(指定AUTOMATIC值)。

自调整操作所作的更改将记录在stmmlog子目录的内存调整日志文件中。这些日志文件包含每个内存使用者在特定调整时间间隔内的资源需求摘要,这些时间间隔由日志条目中的时间戳记确定。

如果可用内存量不多,那么自调整功能的性能增益有限。由于调整决策基于数据库工作负载,因此内存需要快速变化的工作负载可能会限制自调整内存管理器(STMM)的效能。如果工作负载的内存特征不断变化,那么STMM将以较低的频率在多变的目标条件下进行调整。在这种情况下,STMM将无法实现绝对汇合,而是尝试维护针对当前工作负载进行调整的内存配置。

本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

相关文章
|
SQL Oracle 关系型数据库
【DB吐槽大会】第48期 - PG 性能问题发现和分析能力较弱
大家好,这里是DB吐槽大会,第48期 - PG 性能问题发现和分析能力较弱
|
SQL 存储 关系型数据库
【DB吐槽大会】第61期 - PG 审计功能有巨大增强空间
大家好,这里是DB吐槽大会,第61期 - PG 审计功能有巨大增强空间
|
SQL 关系型数据库 数据库
【玩转DB2】二、DB2联邦详细操作和踩坑
建立联邦(建立数据库与数据库联系与问题) 有问题可以找小可玩,评论留言。什么是联邦??建立和另外一个库的关系,换句话说就是我可以在这个库查到另外一个库的表。 本地库连目标数据库1、登陆本地服务器数据库 切换到对应的用户:su - 本地库用户名 连接本地库:db2 connect to 本地库 user 本地库用户名 using 本地用户密码 2、开启联邦支持开启联邦支持,查看数据库管理配置文件,FEDERATED属性 db2 get dbm cfg 如联邦属性为NO, 则需开启属性,重启数据库。
4006 0
|
SQL 监控 关系型数据库
|
关系型数据库 数据库 数据库管理
|
关系型数据库 MySQL 测试技术
|
存储 关系型数据库
自己开发DB2工具 (11)
目前公司内部开发后台这块主要用的工具还是QC 4.8 ,但是QC4.8有个问题就是在导出一些特别长的存储过程的时候会出错发生截断现象。
772 0
下一篇
无影云桌面