分类:
2008-04-12 23:43:38
来源:DB2 开发者园地 作者:Blair Adamache |
假定您同时面临两种最糟糕的情况:一方面数据库必须迅速,另一方面您又无法预测其中的数据增长或去花费大量时间对其进行维护,那怎么办呢?您可能会问:如果有些事情很重要,为什么不将 DBA 资源用于它呢?但老板并不总是理性的。幸运的是,关系数据库架构设计师们并不是仅有的花费大量时间决定如何使用大内存机器的人:操作系统专家也在研究这个问题。您将需要做一个信念上的飞跃,将所有数据放置到 SMS 表空间,并将文件系统用作容器。(也可以使用 DMS 来做这件事,但是在为容器定义文件大小时,还必须计划数据增长)。现在,查看所有 4 GB 内存地址以上的空间并将它用于文件系统高速缓存,是操作系统的任务。幸运的是,由于大多数数据库运行在大型 SMP 上,并且能够通过利用应用程序来达到其性能目标,这推动了系统设计师们挖掘出大内存机器的潜能,以将频繁访问的数据保存在内存中。而这正是人们希望数据库缓冲池所做的:将经常访问的数据保存在内存中,而其余的仅留在磁盘上。 别在家里尝试这个操作!(在工作中、在老板的系统上尝试。) 工作负载平衡还意味着将表空间分布到多个磁盘,这样多个磁盘可以同时返回数据,因而也就启用了并行 I/O。这里,在三个变量之间存在创造性压力:磁盘、内存和处理器。运气好的话,您的每种资源都充足,并且可以在它们之间进行工作负载平衡来构建一个系统,对于您所花费的时间和投资的金钱,这个系统是物有所值的。至于还没有使用的硬件呢?唔,至少它使硬件销售代表挣得大笔佣金可以到夏威夷度假。而且,如果没有其它原因,那么您是否曾发现自己在夏威夷钓鱼而您的小艇和海浪搏斗时,这些额外的硬件和一根绳索就会形成一个可靠的锚。 |