数据仓库中的数据可依据其温度来分类。数据的温度基于其年龄、被访问的频率、不稳定程度和">访问数据的查询的性能的重要性。热数据经常被访问和更新,用户在访问这类数据时期望获得最佳的性能。冷数据很少被访问和更新,并且访问这类数据的查询的性能无关紧要。为热数据使用更快、更昂贵的存储设备,为冷数据使用更慢、更廉价的存储设备,这样就可以优化最重要的查询的性能,同时帮助降低总体成本。
本文将介绍一种管理多温度数据仓库的战略,该战略基于数据的温度将数据存储在不同类型的存储设备上。文中提供了针对以下每项任务的指南和建议:
• 标识数据并将其归类到不同温度层
• 设计数据库来容纳多个数据温度
• 将数据从一个温度层移动到另一个温度层
• 使用 DB2® 工作负载管理器为热数据请求分配比冷数据请求更多的资源
• 在数据仓库包含多个数据温度层时,规划一个备份和恢复策略
本文的内容适用于基于 10.1 版或其更高版本的 DB2 Database for Linux, UNIX, and Windows 的数据仓库。
存储在数据仓库环境中的数据量正在以前所未有的速度增长。此类增长有多种原因。例如:
• 数据库用户保留了无数的详细数据,比如交易历史、Web 搜索查询和详细的电话记录。
• 随着数据挖掘算法不断改进,并且越来越高的处理能力变为现实,组织正在分析更加久远的历史数据,以便更准确地预测未来需求。
• 更严格的制度和审计标准现在要求企业将数据保留比以往更长的时间。
• 许多企业正在通过改用基于 Web 的记录来消除基于纸张的记录的成本。
但是,不是数据仓库中的所有数据都对组织具有同等的价值。一般而言,与更老的数据相比,查询和维护流程更有可能访问或更新仓库中最新的数据。因此这些数据被称为热数据。随着时间的推移,数据会逐渐冷却,变为暖数据,然后变为冷数据,表明用户访问或更新此数据的概率明显降低。但是,这些数据必须仍然可用于制度请求、审计和长期研究。冷数据请求的另一个重要特征是,用户通常不会执著于这些请求的最佳性能。因为高性能对这些查询无关紧要,所以可以将冷数据放在更慢、更廉价的存储设备上。
一个仓库可包含多个不同的温度层(热、暖、冷和休眠)。一般而言,温度层的数量与附加到仓库的存储设备的不同类型数量是相对应的。例如,您可以将热数据存储在新的固态硬盘 (SSD) 上;将暖数据存储在新的快速磁存储设备上;将冷数据和休眠数据存储在更老、更低效的磁存储设备上。
每个数据温度的定义依赖于具体的环境,但数据温度通常具有很常见的类别。下表提供了按温度对数据进行分类的一些指南:
数据温度 数据温度特征 典型数据年龄 热 战术性和 OLTP 类型的数据 — 常被必须具有很短的响应时间的查询访问的最新数据。例如,操作数据存储 (ODS) 中的高容量、较小的结果集单点查询。 0 - 3 个月,包括此数据的合计或摘要 暖 传统的决策支持类型数据 — 较少被访问和被很可能不需要短响应时间的查询访问的数据。 3 - 13 个月,包括此数据的合计或摘要 冷 久远的历史和遗留数据 — 通常很少被访问的数据。 13 个月 - 5 年 休眠 制度类型的数据或归档数据 — 很少被访问且从不更新的数据。 超过 5 年
随着数据的老化,数据的平均 温度会逐渐冷却。在用户进行定期分析时,比如分析当前季度与去年相同季度的对比结果,可能出现温度波动或热点。但通常数据仓库中只有较小比例的数据被视为热数据或暖数据,70% 到 90% 的数据被视为冷数据或休眠数据。下图给出了数据在温度层上的典型分布。
图 1:数据在温度层上的典型分布
图字: 数据量 热数据 暖数据 冷数据 休眠数据 数据年龄