DB2数据库设计:取得最佳性能的准则

在开发过程的早期作出的很多设计决定对DB2应用程序和数据库的性能有着巨大的影响。本文为在z/OS环境中取得更好的性能提供了一些一般性的指南和建议。

一、简介

本文的目的是为IBM业务伙伴提供关于DB2 Universal Database?(UDB)for z/OS(后面将简称为 DB2)环境中DB2数据库性能的重要信息。本文试图从多处收集材料,并尽可能有效地将它们表述出来。本文无意包含很全面的范围,也不会包含很深的细节。

我曾打算讨论对DB2数据库的性能影响最大的一些因素。但是,并不是所有可能的情形都可以预测到,也不是所有潜在的考虑都能顾及到,更不用说在期望的范围内对它们进行描述了。我希望本文可以为不同环境下的DB2用户提供一个通用的指南,以帮助他们取得最佳的DB2数据库性能。本文的目的是成为一个良好的起点,用以处理任何给定安装环境下的数据库性能问题。

本文的范围是数据库设计性能。DB2性能远不止这一部分,它肯定要受到数据库设计以外的很多因素的影响。例如,程序的编码逻辑和其中使用的实际的SQL语句,可以列为应用程序设计一类。DB2系统性能可以包括诸如安装选项、缓冲池大小设置、DB2相关地址空间的调度优先级等等之类的因素。

本文的焦点是DB2数据库的设计。不过,有时候这些性能因素类别之间的界线可能会有些模糊。例如,在某种安装环境下进行配置时,缓冲池大小的设置和数量的选择通常被认为是一项系统性能因素。但是,倘若是将特定的表空间和索引指派给那些缓冲池,那么这些因素又可以看作是数据库设计一类的因素了。

在这里,我假设读者对z/OS环境中的DB2有一个基本的理解。本文的头几页将讨论性能管理的一些基本概念和准则,以便进行“级别设置” 。我的建议有点综合的性质,因而不会总是详细地给出技术性的描述和语法。读者如果想了解关于这些内容的更详细的信息,那么应该去阅读关于用户本地所安装的DB2版本的最近的IBM文档。

本文的通用设计点是DB2 for z/OS V7。虽然DB2 for z/OS V8已经被宣布,并且也普遍可用(generally available ,GA),但是大部分IBM客户极有可能需要几个月的时间才能实现用于他们的生产系统的DB2 V8 NFM(New Function Mode)。而且,这里还要考虑另外一个因素。虽然DB2的每个新版本在变得普遍可用之前,都已经在IBM及其客户环境下经过了广泛的测试,但是相对于一个还没有推广的、没有普遍使用的版本而言,客户们往往对于基于早先版本的DB2的一般建议和窍门更有信心(长时间积累的经验验证了这一结论)。我将提到DB2 V8的一些新特性,从性能的角度来看,这些新性能可能会影响数据库设计。

免责声明:本文中所包含的信息未经任何正式的IBM测试,而是以AS IS的形式发布的。对这些信息的使用和其中任何技术的实现,都由用户承担责任,并取决于用户的能力去评价它们和将它们整合到客户特有的操作环境。虽然IBM对于每一项都进行了审查,以求特定情况下的正确性,但不能保证在其他情况下也能得到相同的或类似的结果。试图将这些技术应用于他们自身环境的用户须自己承担风险。

时间: 2024-09-06 06:36:07

DB2数据库设计:取得最佳性能的准则的相关文章

DB2数据库设计和最高性能原则

这篇文章的目的是为了给IBM(r)商业伙伴提供一些重要的信息,这些信息是关于DB2通用数据库(UDB)在z/OS(r) 环境下(以下简称DB2)DB2(r)数据库性能方面的.本文试图将来自多方资源的材料进行整合,然后尽量有效地将信息展示出来.本文尽量避免在范围上过于宽泛,以及过于深入细节.下面,我将要讨论那些最频繁影响DB2数据库性能的因素.我在这里并不涉及所有可能的条件和所有潜在的考虑,而是只局限于预期的范围之内.我希望这篇文章能够对DB2客户有一个总体的指导,从而使它们自己的环境中去获得DB

DB2面向OLTP环境的物理数据库设计:规模调整和容量管理

数据库的规模和容量规划包括估算可以满足企业级的业务目标所需的系统资源.良好的容量规划不仅侧重于满足当前的需求,并针对未来需求对系统进行大小调整,使数据库http://www.aliyun.com/zixun/aggregation/13748.html">基础架构可以根据业务需求的变化而进行无缝扩展.此外,一个良好的计划会考虑到工作负载变化. 容量规划的主要目标是,确定系统资源的需求,并设计一个均衡的系统,优化资源,以达到满足业务需求的最佳性能和吞吐量. 当我们讨论数据库的规模调整和容量管

DB2面向OLTP环境的物理数据库设计:查询设计

在最基本的层面,包括选择.插入.更新和删除在内的 SQL 操作是应用程序与 DB2 数据库进行交互的方式.应用程序的总体性能和体验受到该应用程序所用的 SQL 操作的影响. 设计.维护.监视和调优 SQL 查询的完整处理超出了本文的范围.然而,我们从较高层次概述了查询设计的工具和一般准则,因为查询设计和物理数据库设计彼此密切相关. 大多数物理数据库设计的特征对 SQL 语句并不明显,但为了更好地使用 DB2 特性,在编写查询时需要考虑到数据库的物理特征,如索引.例如,使用范围分区表时,选择查询即

DB2面向OLTP环境的物理数据库设计:数据库事务日志

数据库事务日志对于数据库恢复至关重要,也是设计高度可用的数据库解决方案的一个重要组成部分. 数据库日志使得从故障中恢复成为可能.它们还可以在 HADR 环境中同步主数据库和备用数据库. DB2 对每个数据库使用一组独立的日志文件. 所有数据库都有与自己有关联的日志.这些日志保留数据库变更的记录.如果数据库需要还原到最后一次完整离线备份之前的某个点,日志需要将数据前滚到故障点.DB2 数据库支持两种类型的数据库的日志:循环日志和归档日志. 循环日志 循环日志仅支持崩溃恢复,也就是说,如果 DB2

DB2面向OLTP环境的物理数据库设计:数据类型

为一个数据库设计表,这涉及到选择一个合适的http://www.aliyun.com/zixun/aggregation/14208.html">数据模型和数据类型.数据类型是一个列属性定义,它指示了应该将什么类型的数据存储在一个表列中. 根据所存储的数据的性质小心选择正确的数据类型,这有助于最大限度地减少存储需求. 最大限度地减少数据行消耗的空间,这有助于将更多行放在一个数据页面中.如果一个数据页面中有更多的行,那么这样可以提高缓冲池命中率,减少 I/O 成本,并实现更好的查询性能.DB

DB2 V10.1多温度数据管理:针对多温度数据的数据库设计

当为多温度数据设计数据库时,本文推荐的主要原则是将热.暖.冷和休眠数据物理地分开,将不同的温度层隔离在不同的存储组中.将热数据和暖数据放在最快的存储上的表空间中,将冷数据和休眠数据放在更廉价.更慢的存储设备上的表空间中.这种类型的数据库设计使所有数据均可访问,还通过为很少访问或很少更新的数据使用更低成本的存储来优化了性价比平衡. 通过基于数据的温度来将其存储在表空间中,将热.暖.冷和休眠数据物理地分开.将热数据存储在最快的存储设备上,将暖数据存储在快速的存储设备上,将冷和休眠数据存储在较慢的存储

DB2数据仓库环境的物理数据库设计:简介

良好的http://www.aliyun.com/zixun/aggregation/8302.html">数据仓库设计是最大程度地提高和加速数据仓库实现的投资回报的关键所在.良好的数据仓库设计能带来在可伸缩性.平衡性.灵活性方面都足以满足当前和未来需求的数据仓库.按照本文中提供的最佳实践建议,您可以在设置数据仓库时保证高效的查询性能.简化的维护和健壮的恢复选项,从而获得长期成功. 数据仓库设计分为两个阶段:设计逻辑数据模型和设计物理数据模型. 数据仓库设计的第一个阶段是创建逻辑数据模型,

DB2数据仓库环境的物理数据库设计:设计聚合层

聚合或汇总数据有助于提高查询性能.您可以利用 DB2 数据库对象,这有助于您聚合数据,例如物化查询表 (MQT).视图或视图 MQT. MQT 也称为汇总表,它能预先计算开销较高或使用频繁的某个(或一组)查询的结果.结果集会存储在专用表中,随后可利用此表来应答常用的查询或类似的查询.在填充或刷新 MQT 中的数据时,引用的源表称为基表. 使用物化查询表 通过利用 MQT 聚合不同级别的数据,可以支持分析数据的应用程序,无需设计多个基表,也无需牺牲数据的原子粒度. 分析查询的次优性能往往是使用 M

DB2面向OLTP环境的物理数据库设计:数据库操作和维护

在数据库系统进入生产环境之后,工作重点会转向对数据库系统的日常维护.日常运营方面包括性能管理.问题诊断和维护,它们必须继续满足业务http://www.aliyun.com/zixun/aggregation/14189.html">服务水平协议. 面向 OLTP 环境的物理数据库设计应包括运营和维护任务的时间表.本节提供了此类活动的总结. 恢复策略 作为 RAS 整体策略的一部分,恢复策略在满足您的 RAS 目标中发挥着重要作用.虽然事实上在许多层次上都存在冗余,但在定义恢复点目标 (R