Oracle数据库性能优化方法论和最佳实践
上QQ阅读APP看书,第一时间看更新

2.5.2 主要的数据库服务资源供给

数据库服务器主要包含4类基础资源供给:CPU、内存、磁盘和网络。这4类基础资源具有完全不同的处理能力特征。一般来说具有以下递减关系:CPU >内存>>磁盘≈网络。磁盘还可以通过缓存、并行读取来获得很高的带宽,而对于网络,万兆网卡也才能达到理论1000MB/s的吞吐量,而且一般服务器的网卡接口有限,网络几乎无法提供与其他3大资源匹配的吞吐量。从这个匹配关系出发,几乎要求所有的业务系统都被设计成只需要获取一小部分数据返回客户端,也可以看出,有大量数据返回的业务系统网络也会成为瓶颈所在。

在主要的4类资源中,内存具有黏合剂的作用,可以作为CPU、磁盘和网络之间的缓冲,使资源之间的能力更加匹配。在高内存系统中,如何有效使用内存来解决各类资源瓶颈是资源瓶颈优化实践中的主要课题。

磁盘和网络由于其天生具有带宽不足的特性,在大部分业务系统中,磁盘和网络会成为所谓的资源瓶颈所在。有两种不同的手段来完成存储系统和网络系统的改善。

❑ 以内存和CPU资源来换取磁盘和网络资源是一种常用的手段,比如大规模缓存、传输数据压缩等。

❑ 减少存储系统、网络系统和服务器之间的数据交互,采用分布式计算、智能化存储系统和网络系统只返回绝对必需的数据,从而减少数据交互。比如Oracle Exadata一体机的主要目标就是减少存储和服务器之间数据的交互,通过减少数据交互来大规模改善性能。