db2 对缓冲池的性能优化
需求:因为项目开始的时候没有对DB2数据库进行深入的熟悉,所以造成项目后期做性能测试的时候,导致应用访问过慢,后来决定从数据方面做做一下性能优化, 主要在于缓冲池方面。
解决方案:因为数据库中只有一个常规表空间表空间USERSPACE1和一个缓冲池IBMDEFAULTDP(1G),所以决定重新再建一个大的缓冲池BP2,将USERSPACE1赋给BP2
CREATE BUFFERPOOL BP2 SIZE 2048 PAGESIZE 4K;
ALTER TABLESPACE USERSPACE1 BUFFERPOOL BP2;
附注:
以下为对网上资源学习后的一个总结:
1、表空间
I、数据存储层级关系:数据库-->表空间-->容器-->表,
II、表空间分类:
目录表空间
特性:每个数据库只有一个目录表空间,它是在发出 CREATE DATABASE 命令时创建的.目录表空间被 DB2 命名为 SYSCATSPACE,
用途:它保存了系统目录表;
常规表空间
特性:创建数据库时指定该表空间的缺省名为 USERSPACE1。长表空间是可选的,缺省情况下一个都不创建,
用途:保存表数据和索引、还可以保存LOB之类的长数据;
系统临时表空间
特性:随数据库创建的系统临时表空间的缺省名为 TEMPSPACE1,
用途:用于存储 SQL 操作(比如排序、重组表、创建索引和连接表)期间所需的内部临时数据;
以上是由系统管理的空间(SMS),必须有一个
以下是由数据库管理的空间(DMS),可选
长表空间
用途:用于存储长型或 LOB 表列,存储结构化类型的列或索引数据
用户临时表空间
用途:存储已声明的全局临时表
LOB(large object)的定义:
是一种用于存储大对象的数据类型,如医学记录(如X-射线)、视频、图像等。LOB有三种类型:BLOB:Binary Large Object、
CLOB:Character Large Object、DBCLOB:Double-byte Character Large Object。每个LOB可以有2GB
III、页大小(暂无):
IIII、创建表空间:
最有效的表空间设置属性:PAGESIZE(表空间大小)、EXTENTSIZE(将数据写入到下一个容器之前写入到当前容器中的数据的页数) 和 PREFETCHSIZE(预取)
CREATE TABLESPACE 语句的示例
下列语句将创建一个常规表空间。所讨论的所有设置都是为了进行说明。
CREATE TABLESPACE USERSPACE3
PAGESIZE 8K
MANAGED BY SYSTEM
USING ('d:\\usp3_cont1', 'e:\\usp3_cont2', 'f:\\usp3_cont3')
EXTENTSIZE 64
PREFETCHSIZE 32
BUFFERPOOL BP3 --指定缓冲池
OVERHEAD 24.1
TRANSFERRATE 0.9
查看表空间
list tablespaces
查看表空间详情
list tablespaces show detail
查看单个表空间的物理路径(根据表空间标识)
list tablespace containers for 2
2、缓冲池
I、物性:一个缓冲池可以被多个表空间使用,但一个表空间只能使用一个缓冲冲,并且他们的页大小要一致
II、缓冲池的缺省大小是 BUFFPAGE 数据库配置参数所指定的大小,但是可以通过在 CREATE BUFFERPOOL 命令中指定 SIZE 关键字来覆盖该缺省值
(查询数据库配置属性命令:db2 get db cfg for <dbsname> //当前数据库可以省略 )
III、创建缓冲池
CREATE BUFFERPOOL 语句的示例
CREATE BUFFERPOOL BP2
SIZE 2000
PAGESIZE 8K
将表空间加载到缓冲池中
ALTER TABLESPACE USERSPACE3 BUFFERPOOL BP2;
删除缓冲池
DROP BUFFERPOOL BP2;
修改缓冲池大小
ALTER BUFFERPOOL "BP2" IMMEDIATE SIZE 5000;
查看缓冲池属性
SELECT * FROM SYSCAT.BUFFERPOOLS
SELECT TBSPACE,BUFFERPOOLID FROM SYSCAT.TABLESPACES --查询表空间与哪个缓冲池相关联
参考资料:DB2 基础: 表空间和缓冲池:http://www.ibm.com/developerworks/cn/data/library/techarticles/0212wieser/0212wieser.html
分享到:
相关推荐
DB2性能优化 DB2性能优化 DB2性能优化 DB2性能优化
DB2数据库性能调整和优化(第2版)侧重于介绍DB2数据库的性能调优。性能调优是一个系统工程:全面监控分析操作系统、I/O性能、内存、应用及数据库才能快速找到问题根源;深刻理解DB2的锁及并发机制、索引原理、数据库...
网上很不错的,DB2缓冲池和索引调优的方法
DB2 优化DB2 优化,db2性能优化,查询优化 大家赶紧下载吧
资源名称:让DB2跑得更快 DB2内部解析与性能优化资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
DB2缓冲池和索引调优的方法.doc
db2数据库性能优化小技巧
DB2的表空间和缓冲池
DB2数据库性能调整和优化 - db2优化器
DB2数据库设计与性能优化,关于db2性能优化的最佳方案
IBM DB2 表空间与缓冲池IBM DB2 表空间与缓冲池IBM DB2 表空间与缓冲池IBM DB2 表空间与缓冲池IBM DB2 表空间与缓冲池
DB2数据库性能调整和优化
DB2数据库设计与性能优化原理、方法与实践.pdf(电子文档版)
db2数据库性能调整和优化,非常好的一本书,推荐给大家
对于数据库管这种对性能要求极高的系统而言,缓存自然也是不可少的。数据库中的缓存称为缓冲池,缓冲池存在的目的是提高数据库系统性能。 缓冲池本质上是分配给数据库管理器管理的一块内存空间,用于读写数据...
内部培训 关于db2如何进行性能优化的文档
├ 第02周 DB2性能优化方法系统 │ │ 第2周 DB2性能优化方法系统.pdf │ │ 第二周 DB2性能优化方法系统.mp4 ├ 第03周 从监控开始 │ │ 第3周 从监控开始.pdf │ └ 第三周 从监控开始.mp4 ├ 第04周 配置参数...
本文是针对 DB2® Universal Database(DB2 UDB)的初学者在遇到 DB2 的性能问题的时候不知道从何分析,从何入手的这一问题,从 DB2 的体系结构介绍开始,由浅入深的讲述了 DB2 性能优化的一些基础知识,简单地介绍...