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

来源: 作者: 2007-12-03 出处:pcdog.com

atm  db2  操作系统  磁盘空间  数据库  
上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 下一页 

  2) 对部分数据进行操作:分区表空间允许DB2实用程序一次处理一个分区的数据,这样其他任务或应用程序就可以并发地对其他分区进行访问。按照类似的方式,您可以将mass UPDATE、DELETE或INSERT操作拆成多个不同的任务。

除了增加可用性以外,这种技术还可以为减少完成这种DB2工作所需的时间提供潜力。

  3) 对频繁访问的数据有更快的访问速度:如果分区索引可以将访问更频繁的行与表中其他的行分开来,那么就可以将这些数据放入到它们专用的分区中,并使用更高速的DASD设备。

  通常,表越大,就越有理由将其创建为分区的表。但有时候为较小的表创建分区表空间也很有利。当将 查找(lookup)表与其他较大的分区的表相连接时,通过将查找表也进行分区,可以最大化并行度。

  如果在连接谓词中使用分区键(partitioning key),最后还有一点考虑需要顾及。需要按分区键进行连接的表应该有相同数量的分区,并且应该在相同的值上断开。

  5. 数据压缩

  DB2提供了压缩一个表空间或分区中的数据的能力。这是通过在CREATE TABLESPACE语句中指定COMPRESS YES选项,然后对表空间执行LOAD或REORG实用程序来实现的。通过用较短的字符串替换经常出现的长字符串,可以压缩数据。这时会建立一个字典,其中包含了映射原始的长字符串与它们的替换值的信息。

  在数据被存储之前压缩数据,以及在从外部存储设备读出数据时将数据解压,这都需要使用一定的CPU资源。但是,数据压缩也可以为性能带来好处,因为可以在更少的空间(包括DASD和缓冲池中的空间)中存储更多的数据,与未压缩的数据相比,这样可以减少同步读,减少I/O等。

  在决定是否压缩一个表空间或分区时,要考虑下面一些事情:

  1) 行的长度:行的长度越大(尤其是它接近页宽时),压缩的效率就越低。在DB2中,行不能跨页,您可能无法实现足够的压缩来使一页可以容纳多行。

  2) 表的长度:对于更大的表空间,压缩更为有效。对于非常小的表,压缩字典的大小(8KB到64KB)有可能会抵消掉通过压缩所节省出来的空间。

  3) 数据中的模式:对于特定的表空间或分区,数据中重复出现的模式的出现频率将决定压缩的效果。有大量重复字符串的数据有巨大的压缩潜力。

  4) 对压缩的估计:DB2提供了一个独立的实用程序DSN1COMP,通过执行该实用程序可以判断压缩数据的效果。要了解关于运行该实用程序的更多信息,请参考DB2 Utilities Guide and Reference手册。


更多内容请看PCdog.com--DB2存储和备份  DB2开发  数据库相关文章专题
上一页 1 2 3 4 5 6 7 8 9 10 11 12 13 14 下一页 
上一篇:使用DB2look重新创建优化器访问计划(1)
下一篇:DB2如何提高IMPORT命令的性能