DB2数据仓库环境的物理数据库设计:DB2 10.1数据仓库设计特性

在您的">数据仓库中,利用 DB2 版本 10.1 的新特性进一步简化数据生命周期管理、优化存储利用率,并存储和检索基于时间的数据。
DB2 版本 10.1 引入了以下新特性:

“存储优化”
“多温度带数据存储”
第 32 页介绍的“自适应压缩”
第 32 页介绍的“使用时态表实现时间旅行查询”

存储优化

在 DB2 版本 10.1 中,自动存储表空间已经成为 DB2 存储的标准,它们同时提供了简化管理和提高性能的优势。对于用户定义的永久表空间,自版本 10.1 起已经放弃使用 SMS(系统管理空间)类型。

从版本 10.1 Fix Pack 1 起,DMS(数据库管理空间)类型已被弃用。

现在,您可以创建和管理存储组,即存储路径组。存储组包含具有类似特征的存储路径。自动存储表空间会继承表空间默认使用的存储组的介质属性值、设备读取速率和数据标记属性。使用存储组的优势如下:

您可以对自动化存储管理的表空间进行物理分区。您可以使用 ALTER TABLESPACE 语句及 USING STOGROUP 选项,动态地将表空间指派到不同的存储组。

您可以创建不同的存储类(多温带存储类),将频繁访问的(热)数据存储在快速存储中的存储路径内,将不频繁访问的(冷)数据存储在速度较慢或成本较低的存储中的存储路径内。

您可以为存储组指定标记,为数据指派标记。随后,在 DB2 Work Load Manager (WLM) 中定义规则,规定如何基于这些标记处理活动。

多温带数据存储

在数据仓库环境中,将活动(热)数据与较快的存储关联,将不活动(冷)数据与较慢的存储关联,这可以简化数据生命周期管理。

您还可以对于不同温带的表空间使用不同的维护操作。您可以根据工作负载的不同存储特征和类型,按照环境的要求定义任意多个数据温带。

在数据仓库环境中的另一种应用方法就是将多温带存储类与范围分区表配合使用。通过将表空间指派给不同存储组来定义多个温带之后,可以将各数据分区指派给具有恰当温带的表空间,从而确定数据访问的优先顺序。

您可以使用 CREATE STOGROUP 语句来创建存储组,指定对应的存储路径和设备特征,如下例所示:

CREATE STOGROUP hot-sto-group-name ON hot-sto-path-1, ..,hot-sto-path-N
DEVICE READ RATE hot-read-rate OVERHEAD hot-device-overhead
CREATE STOGROUP cold-sto-group-name ON cold-sto-path-1, ..,cold-sto-path-N
DEVICE READ RATE cold-read-rate OVERHEAD cold-device-overhead

创建存储组之后,使用 ALTER TABLESPACE 语句可将自动存储表空间从一个存储组移动到另一个存储组。将包含热数据的表空间指派给热存储组,将包含冷数据的表空间指派给冷存储组。将大多数查询访问的数据放置在热表空间中能够显著提高查询性能。

自适应压缩

在 DB2 版本 10.1 中,自适应压缩使用分页级压缩字典和表级压缩字典来压缩表。自适应压缩可以适应多变的数据特征,在很多情况下,还能提供更为出色的压缩比例,因为分页级压缩字典考虑到了分页内存在的所有数据。在数据仓库环境中,更好的压缩率就意味着显著的存储节约。

分页级压缩字典是自动维护的。因此,您并不需要执行表重组来压缩分页中的数据。除了提高压缩比率之外,这种压缩方法还能提高数据的可用性和涉及大量数据的维护操作的性能。

使用时态表实现时间旅行查询

使用时态表将基于时间的状态信息与您的数据相关联。未使用时态支持的表中的数据适合当前使用,而时态表中的数据可在数据库系统和/或用户应用程序内定义的期间保持有效。

利用时态表,仓库数据库可以存储和检索基于时间的数据,无需额外的应用程序逻辑。举例来说,数据库可以存储表的历史记录,保证您能查询已经删除的行或者已经更新的行的原始值。如需了解有关的更多详细信息,请参阅“DB2 最佳实践:利用 DB2 进行时态数据管理”。

最佳实践

要充分利用 DB2 版本 10.1 新特性的优势,请运用以下最佳实践:
使用自动存储表空间。若有可能,将现有 SMS 或 DMS 表空间转为自动化存储。
利用存储组,自动存储表空间执行物理分区,同时利用您的物理仓库设计中的表分区。
利用存储组创建多温带存储类,将频繁访问的数据存储在速度较快的存储中,将不常访问的数据存储在速度较慢或成本较低的存储中。
利用自适应压缩实现更高的压缩比例。
利用时态表和时间旅行查询,存储和检索基于时间的数据。

时间: 2024-07-28 14:40:56

DB2数据仓库环境的物理数据库设计:DB2 10.1数据仓库设计特性的相关文章

DB2数据仓库环境的物理数据库设计:样例场景

这一节介绍了一个物理http://www.aliyun.com/zixun/aggregation/14208.html">数据模型,此模型是针对一家销售大量产品的虚构企业的数据仓库样例场景而设计.该企业数据仓库存储所有这些产品的日常销售数据. 本文中的示例基于样例场景. 物理数据模型设计 下图中的物理数据模型展示了样例数据仓库中使用的表和关系. 图 5. 样例数据仓库的物理数据模型 维度表 样例场景的物理数据模型包含以下维度表,其中存有日期.产品和店铺数据: TB_DATE_DIM TB

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

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

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

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

DB2数据仓库环境的物理数据库设计:设计物理数据模型

为http://www.aliyun.com/zixun/aggregation/8302.html">数据仓库设计物理数据模型时,应集中精力关注各表的定义以及表之间的关系. 在为物理数据模型设计表时,应考虑使用以下指导原则: 为各维度表定义一个主键,确保最细粒度的级别键的惟一性,并在必要时促进引用约束的实现. 避免在事实表上使用主键和惟一索引,在涉及大量维度键时尤为如此.在摄取大量数据时,这些数据库对象会导致性能成本. 将所连接的各维度对之间的引用约束定义为信息型约束,帮助优化器生成有效

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

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

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

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

DB2面向OLTP环境的物理数据库设计:数据建模

收集需求并创建逻辑模型,这是良好的物理数据库设计的关键. 数据建模的第一步是收集需求.该步骤涉及识别需要维护的关键业务工件.数据和信息.这些业务工件被称为实体.对于http://www.aliyun.com/zixun/aggregation/7976.html">在线购物目录,有关客户.产品和定价的信息都是业务关键信息,即实体. 可以通过利益相关者的输入来收集需求.需求和数据模型通过迭代方式向对方输送数据而得到进一步完善,从而创建一个逻辑模型. 图 1 显示了迭代数据建模范例: 收集需求

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

DB2 数据库将数据存储在表中.有几种类型的表可以存储永久性数据,如多维集群表.分区表和范围集群表.除了用于存储永久性数据的表之外,也有一些表可用来展示结果.汇总表.临时表. 根据数据的显示形式和事务类型,您可能会找到一个表类型,提供可以为您的环境优化存储和查询性能的特定功能. 选择合适的表类型 表类型的选择取决于业务和应用程序的需求.表中存储的数据的性质和查询的性能要求.下节描述了每种表类型适合在何时使用. 基表 基表可以保存永久性数据.DB2 数据库的基表有以下几种类型: 常规表 有索引的常

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

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