- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DB2DBA手册讲述
数据库设计时优化
选择数据页的大小
注意: 在DB2 8版本以下是这样限制 , 每页上最多行不能超过255个。
页大小行大小限制列数限制最大容量4KB400550064GB8 KB81011012128GB16 KB162931012256GB32 KB326771012512GB
如果在页大小为32KB的表空间放行长度为12字节的表,它大约只能每个页的10%, 即(255 x 12字节+91字节开销 )= 3KB。造成空间的浪费。
根据大表选择大页的表空间,小表选择小页的表空间,选择是由数据行的大小估算出来的。
规范化
数据库被规范化后,减少了数据冗余,数据量变小,数据行变窄。这样DB2的每一页可以包括更多行,那么每一区里的数据量更多,从而加速表的扫描,改进了单个表的查询性能。但是,当查询涉及多个表的时候,需要用很多连接操作把信息从各个表中组合在一起,导致更高的CPU和I/O花销。那么,有很多时候需要在规范化和非规范化之间保持平衡,用适当的冗余信息来减少系统开销,用空间代价来换取时间代价。
选择数据类型
对每一属性选择什么样的数据类型很大程度上依据表的要求,但是在不违背表要求的前提下,选择适当的数据类型可以提高系统性能。比如有text列存放一本书的信息,用BLOB而不是character(1024),BLOB存放的是指针或者文件参照变量,真正的文本信息可以放在数据库之外,从而减少数据库存储空间,使得程序运行的速度提高。DB2提供了UDT(User Defined Datatypes)功能,用户可以根据自己的需要定义自己的数据类型。当然我们不提倡大量使用自定义数据类型。使用了用户自定义类型之后,编程时需要进行数据类型的转换,会导致应用性能降低。
选择索引
索引是数据库中重要的数据结构,它的根本目的就是为了提高查询效率。现在大多数的数据库产品都采用IBM最先提出的ISAM索引结构。使用索引可以快速、直接、有序的存取数据。索引的建立虽然加快了查询,另一方面却将低了数据更新的速度,因为新数据不仅要增加到表中,也要增加到索引中。另外,索引还需要额外的磁盘空间和维护开销。因此,要合理使用索引:
在经常进行连接,但是没有指定为外键的属性列上建立索引。
在频繁进行排序或分组(即进行group by或order by操作)的列上建立索引。按索引来排序或分组,节约了排序的内存空间
,可以提高效率。
在条件表达式中经常用到的不同值较多的列上建立检索,在不同值少的列上不要建立索引。
如果待排序的列有多个,可以在这些列上建立复合索引(compound index),即索引由多个字段复合而成。在建立复合索引时,将不同值最多的值放在索引的最前面,依次类推,这样过滤得效率较高。
数据库表空间的建立
表空间和表建立优化事项
固定长度的记录比可变长度的记录要好,因为处理固定长度记录的DB2的代码经过了优化。如果记录是固定长度的,那么它就永远不需要从原来存储的页中被移动出来。然而,可变长度的记录可能增长到不再适合原来页的长度,因此它也就必须被移动到另一页。无论何时记录被顺序访问,都一定会出现一个额外的参考页。DB2 UDB V8中的一个新特性就是当你不确定未来的数据长度增长情况时,允许你根据需要改变列的大小,这样你就可以不再需要创建可变长度的记录。
每页中记录的数量也是需要考虑的内容。DB2提供了一些有关页大小的选项,例如4 KB, 8 KB, 16 KB和32 KB 。
I/O预读
有效的预读可以保持CPU处于忙的工作状态,避免在查询处理中延误时间。预读的数据量用表空间参数 PREFETCHSIZE来表示。这个参数决定“提前读入” 的数据量。
预读有两种类型:同步读和预读。预读是这样一种过程,其中在一次读操作中它读入整个区段。而同步读一次从磁盘仅读入一页(4KB)。
表空间参数 PREFETCHSIZE应当被设置成 EXTENTSIZE的整数倍。当创建表空间时,确定该参数的大小。如果创建表空间时,没有指定任何值时, PREFETCHSIZE将被设置为数据库参数 DFTPREFETCH_SZ 中找到的默认值。该默认值是128KB(324KB)。
应当使用多个容器定义创建表空间,这些容器可以驻留在不同的物理磁盘上,可以平衡Disk IO。然后应当把PREFETCHSEZE设置成 EXTENTSEZE与容器数目之乘积。
区段的大小
如果用户为自己想要创建的表空间规定不同的值,那么他需要使用 CREATE TABLESPACE 语句的EXTENTSEZE选项。 EXTENTSIZE 的取值范围是2至256个4KB页。
如果用户希望按照小的区段将数据剥离到多个容器中,那么就使用较小的区段值。区段的大小对于将要发生的
您可能关注的文档
- CRM客户关系管理系统测试计划讲述.docx
- CRM部门交车流程管理讲述.pptx
- CRISPRCas9基因组编辑技术、讲述.pptx
- CR部门绩效考核管理办法讲述.doc
- CSFB缩短时延的方法讲述.docx
- cpc培训文档讲述.doc
- cs7.0安装培训讲述.pptx
- CSFB相关流程讲述.docx
- CTI介绍讲述.pptx
- CRTSⅠ型双块式无砟轨道作业指导书讲述.doc
- 2023咸阳职业技术学院招聘笔试真题参考答案详解.docx
- 2023四川化工职业技术学院招聘笔试真题及参考答案详解.docx
- 2023哈尔滨职业技术学院招聘笔试真题及参考答案详解.docx
- 2023商洛职业技术学院招聘笔试真题及答案详解1套.docx
- 2023呼伦贝尔职业技术学院招聘笔试真题参考答案详解.docx
- 2023南阳农业职业学院招聘笔试真题参考答案详解.docx
- 2023天津公安警官职业学院招聘笔试真题带答案详解.docx
- 2023年上海电机学院招聘笔试真题参考答案详解.docx
- 2023年四川艺术职业学院招聘笔试真题参考答案详解.docx
- 2023安徽体育运动职业技术学院招聘笔试真题及答案详解一套.docx
最近下载
- 中医内科学课件:胃痛.ppt
- 广州市海绵城市建设技术指引及标准图集(试行).pdf
- 基于SpringBoot技术的论坛系统设计与实现.docx
- 本科毕业设计—110kv变电站电气一次部分设计 发电厂课程设计报告.doc VIP
- 世界甲状腺日甲状腺健康科普PPT.pptx VIP
- 电力线路维保服务投标方案(技术方案).pdf VIP
- 2024-2025学年中职思想政治中国特色社会主义高教版(2023)教学设计合集.docx
- 第32课《让思维活跃起来》课件2024北师大版心理健康七年级下册 .ppt
- 山东省(烟台市、德州市)2025届高三高考适应性测试化学试题及答案.docx VIP
- 黑龙江高职高专:畜牧兽医专业建设方案.doc
文档评论(0)