技术开发 频道

★DB2 9试用情况评析


更便捷、面向更大数据规模的自动内存管理
    一直以来,DBA的很大一部分时间被消耗在调整各类数据库及其运行环境的参数上,其中很多经验值、阀值和计算规则被一代代DBA传承,甚至于明显地写在数据库产品的配置文档中,但是由于很多参数的修改都需要重新启动数据库,因此这些本该很早就被自动管理的工作成了伴随DBA 职业生涯的协奏曲。

    自从去年,在Oracle 10g发布的Oracle Open World 上首次看到了自动内存管理,随后的SQL Server 2005也把自动内存管理作 为反复宣扬的卖点,甚至于开源数据库MySQL 也开始宣称支持部分的内存自动管理。笔者在一个内存已经枯竭的环境下,对DB2 9 进行大容量长交易提交时,体会到了DB2 9较之其他先行者的一些优势。常规的讲,DB2 9采用了一种新的内存调优功能,它可以自动设置内存配置参数的值以及缓冲区池大小。当启用时,该内存调优工具可以在几个内存消耗者之间动态分布可用的内存资源,包括分类、包缓存、锁列表区域和缓冲区池。

不过DB2 9在自动内存管理方面出彩的地方是如下两个:
◆ 在Windows和AIX平台上,自调优内存特性还可以确定总的数据库内存需求和动态地调整数据库共享内存,也就是根据近期运行情况动态的预计算未来需要的内存容量。

◆ DB2 9根据工作负荷的要求来占用更多的物理内存,并在数据库内存需求较低时将该内存释放给操作系统。尤其在Windows平台,这个特性更为明显,相信读者都有类似的经验,Oracle 10g /2nd 和SQLServer 2005 虽然有自动内存管理,而且在增加和分配内存方面做的与DB2 9不相伯仲,但是内存的释放却一直很慢,常常出现持续居高不下的情况。
当然,上述分析仅仅从业务层面展开,其实这种内存自动管理的运维意义更大,借助它每个DBA可以管理更大规模的数据库Farm,把自己的时间从重复的简单劳动(日常内存参数的修改相对于资深DBA 而言)中解脱出来,将更多的精力关注在企业数据库Farm 布局和整合上。
0
相关文章