在您的">数据仓库中,利用 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 表空间转为自动化存储。
利用存储组,自动存储表空间执行物理分区,同时利用您的物理仓库设计中的表分区。
利用存储组创建多温带存储类,将频繁访问的数据存储在速度较快的存储中,将不常访问的数据存储在速度较慢或成本较低的存储中。
利用自适应压缩实现更高的压缩比例。
利用时态表和时间旅行查询,存储和检索基于时间的数据。