[计算机]db2数据库优化

[计算机]db2数据库优化

ID:36210123

大小:412.00 KB

页数:37页

时间:2019-05-07

[计算机]db2数据库优化_第1页
[计算机]db2数据库优化_第2页
[计算机]db2数据库优化_第3页
[计算机]db2数据库优化_第4页
[计算机]db2数据库优化_第5页
资源描述:

《[计算机]db2数据库优化》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、DB2数据库优化经分项目组:严辉DB2统计信息保持最新如果没有存储在DB2系统目录中的统计信息,优化器在优化任何事物时都会遇到困难。这些统计信息向优化器提供了与正在被优化的SQL语句将要访问的表状态相关的信息。存储在系统目录中的统计信息的类型包括:关于表的信息,包括总的行数、关于压缩的信息和总页数;关于列的信息,包括列的离散值的数量和存储在列中的值的分布范围;关于表空间的信息,包括活动页面的数量;索引的当前状态,包括是否存在索引、索引的组织(叶子页的数量和级别的数量)、索引键的离散值的数量以及是否群集索引;关于表空间和索引节点组或分区的信息。当执行RUNSTATS或RUNSTATISTICS实

2、用程序时,统计信息就会填充DB2系统目录。您可以从控制中心(ControlCenter)、批处理作业或通过使用命令行处理器来调用该实用程序。一定要确保在适当的时候积累统计信息,尤其是在生产环境中。RUNSTATS语法表:db2RUNSTATSONTABLE表名索引:db2RUNSTATSONTABLE表名FORINDEXESALL表和索引:db2RUNSTATSONTABLE表名ANDINDEXESALL增强的统计信息表:db2RUNSTATSONTABLE表名WITHDISTRIBUTION索引:db2RUNSTATSONTABLE表名FORDETAILEDINDEXESALL表和索引:db

3、2RUNSTATSONTABLE表名WITHDISTRIBUTIONANDDETAILEDINDEXESALL常用例子RUNSTATSONTABLETR1ADMIN.MID_GSM_VOICE_CDR_000ONKEYCOLUMNSWITHDISTRIBUTIONONALLCOLUMNSANDSAMPLEDDETAILEDINDEXESALLALLOWREADACCESSTABLESAMPLEBERNOULLI(1)REPEATABLE(1)SETPROFILENONE分布键分布键是一列(或一组列),用来确定存储特定数据行的数据库分区。分布键是使用CREATETABLE语句在表上定义的。如果没

4、有为分布在数据库分区组中的多个数据库分区中的表空间中的表定义分布键,在缺省情况下将会根据主键的第一列创建分布键。若未指定主键,则缺省分布键是在该表中定义的第一个非长型字段列。(长型包括所有长型数据类型和所有大对象(LOB)数据类型)。如果正在与单一分区数据库分区组相关的表空间中创建表,且您希望有分布键,则必须显式定义该分布键。缺省情况下,不会创建该分布键。当定义分布键时,应该考虑以下几点:不支持创建只包含长型数据类型(LONGVARCHAR、LONGVARGRAPHIC、BLOB、CLOB或DBCLOB)的多分区表。不能改变分布键定义。分布键应该包括最频繁连接的列。分布键应该由经常参与GROU

5、PBY子句的列组成。任何唯一键或主键必须包含所有分布键列。索引索引是行位置的列表,按一个或多个指定列的内容来排序。索引通常用于加速对表的访问。创建索引的一些准则包括:在适当地方定义主键和唯一索引。创建关于查询用来连接表(Join谓词)的任何列的索引。创建关于基于常规基础从中搜索特定值的任何列的索引。创建关于通常用在ORDERBY子句中的列的索引。确保使用了仅检索您需要的数据的谓词。例如,确保谓词的选择性值表示您想要返回的那部分表。当创建多列索引时,索引的第一列应该为查询中的谓词最常用的那一列。确保索引造成的磁盘和更新维护的开销不会太高。根据查询所使用的列建立多列索引对于一个特定的查询,可以为某

6、一个表所有出现在查询中的列建立一个联合索引,包括出现在select子句和条件语句中的列。但简单的建立一个覆盖所有列的索引并不一定能有效提高查询,因为在多列索引中列的顺序是非常重要的。这个特性是由于索引的B+树结构决定的。一般情况下,要根据谓词的选择度来排列索引中各列的位置,选择度大的谓词所使用的列放在索引的前面,把那些只存在与select子句中的列放在索引的最后。selectadd_datefromtemp.customerwherecity='WASHINGTON'andcntry_code='USA';在temp.customer上建立(city,cntry_code,add_date)索

7、引。根据条件语句中的谓词的选择度创建索引建立索引需要占用数据库的存储空间,所以需要在空间和时间性能之间进行权衡。很多时候,只考虑那些在条件子句中有条件判断的列上建立索引会也会同样有效,同时节约了空间。1.selectcount(*)fromtemp.customerwherecity='WASHINGTON'andcntry_code='USA';2.selectcount(*)fromtemp.

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。