WEB开发网
开发学院数据库DB2 维护产生价值:只需加以注意即可降低数据库成本的... 阅读

维护产生价值:只需加以注意即可降低数据库成本的五种方法

 2010-09-16 00:00:00 来源:WEB开发网   
核心提示:如果漫不经心,什么东西也照顾不好,维护产生价值:只需加以注意即可降低数据库成本的五种方法,房子、汽车、宠物、朋友和家庭都需要我们加以关注才能保持良好的状态,数据库管理系统也是如此,改进的效果相当显著,一个小小的改动就能每天节省 2.8 个 CPU 小时, 如果不加以注意和照料,DBMS 会支离破碎

如果漫不经心,什么东西也照顾不好。房子、汽车、宠物、朋友和家庭都需要我们加以关注才能保持良好的状态,数据库管理系统也是如此。

如果不加以注意和照料,DBMS 会支离破碎,性能下降,最终由于运行成本太高而不得不关闭。保持最新的维护级别以利用技术改进是一回事儿,而应用正确的技术是另一回事儿。本文讨论通过适当地维护系统、使用适当的工具和注意细节降低 DB2 运行成本的五种方法。

1. 使用适当的 SQL —— 确保您知道它的作用

编写产生所需结果的查询有许多方法;关键是要找到能够发挥您的 DBMS 的长处的方法。这看似简单,但是并不容易实现,因为可用的工具和技术会随着时间改变。

几年前,我的一个客户继承了一个客户关系管理 (CRM) 应用程序,它已经移植到 DB2 for z/OS Version 8 子系统上了。有一个程序给公司的 IBM System z9 造成了很大的负担,它每天占用全部 CPU 周期的 25%。这个程序有 10 个 CREATED Global Temporary Tables,其中大多数嵌入在递归的 SQL 语句中。根据销售链的深度不同,其中六个临时表包含 10,000 到 100,000 行,而且程序反复访问它们。

但是,在 DB2 for z/OS 上有另一种 Global Temporary Table:DECLARED。在 DB2 9 之前,CREATED 临时表无法使用任何索引技术,但是 DECLARED 表可以。因此,我建议客户把六个 CREATED 临时表改为带聚簇索引的 DECLARED 临时表。余下的四个 CREATED 临时表是合适的,因为它们只包含很少的行,而且程序只访问它们一次。这一改动把完成每个事务所需的时间从 1.78 秒降低到了 0.07 秒,考虑到这个程序每天至少执行 6,000 次,改进的效果相当显著。一个小小的改动就能每天节省 2.8 个 CPU 小时。效果如此惊人以致于客户的高级 DBA 开玩笑说他们用不着新的 z9 了,想要退货!

1 2 3 4 5 6  下一页

Tags:维护 产生 价值

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