WEB开发网
开发学院数据库DB2 DB2 最佳实践: 物理数据库设计最佳实践,第 2 部分... 阅读

DB2 最佳实践: 物理数据库设计最佳实践,第 2 部分:MDC、数据库分区、视图以及后设计工具介绍

 2009-11-12 00:00:00 来源:WEB开发网   
核心提示: MDC 需要 coarsification,而且你不能将一个生成列添加到你的表中,DB2 最佳实践: 物理数据库设计最佳实践,第 2 部分:MDC、数据库分区、视图以及后设计工具介绍(7),你不能也不需要在表增长过程中将表的结果生成 MDC 版本,良好设计的 MDC 表一般比非 MDC 表大 2

MDC 需要 coarsification,而且你不能将一个生成列添加到你的表中。

你不能也不需要在表增长过程中将表的结果生成 MDC 版本。良好设计的 MDC 表一般比非 MDC 表大 2-15% 。

你会发现,由于 coarsification 的原因,MDC 集群将提供稍小的集群率(例如,93%)。而使用集群索引的话,为了提高集群率你需要周期性的执行 REORG 来达到这个比率。

使用下面的 MDC 设计的最佳实践:

从找出等于、不等、范围和排序谓词使用的列开始,请选择出你的 MDC 候选列。维度必须匹配你的转入范围才能提高数据转入效率。

记住,要争取密度!为每个已经存在的单元分配一个扩展数据块 – ——不管单元中有多少条记录。这样可以通过最优的空间利用率来增强 MDC,尽量高密度的填充数据块。

控制表的膨胀。保持尽可能低的单元数目并限制存储扩展。 5% 到 10% 的增长对任何单个表都是合理的范围(本文在下面章节讨论 MDC 单元),但是也有例外,甚至也有两倍于平常的增长,不过很少。

注意:BLOCK 索引与相应的表相比非常的小,在大多数情况下,你可以忽略它们的存储需求。

Coarsify 一些维度来提高数据的密度。使用生成列来 coarsifications 表中基数非常少的列。例如,基于日期列的一部分 month-of-year 上创建一列,或使用(INT(列名))/100 来把 DATE 列从 Y-M-D 格式转换成 Y-M 。
CREATE TABLE Sales 
 (SALES_DATE DATE, 
 REGION CHAR(12), 
 PRODUCT CHAR(30), … 
 MONTH GENERATED ALWAYS AS 
 ((INTEGER(DATE)/100) … 
 ORGANIZE BY (MONTH, REGION, PRODUCT) 

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:DB 最佳 实践

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接