数据库是企业IT系统的核心,其性能表现会直接影响整体业务系统的性能表现,而影响数据库性能因素包括系统架构设计、应用程序业务SQL语句、数据库参数优化配置、数据库运行的资源能力。系统架构设计和应用程序业务SQL语句都属于数据库外围,需要从整体业务上去设计优化;数据库的参数配置,核心是要根据数据库上的业务和硬件特点细调参数,丰富的DBA经验对此项影响很大,归属于软件配置内容且随时可调整。数据库的硬件资源,在传统企业中属于一项固定资产投资,前期投资成本高,后期更换成本更高,云时代虽然能够随时扩容硬件资源和更换,但亦受到数据迁移、业务停服等影响,因此好的硬件资源选择非常重要。
影响性能的硬件包括CPU、内存、磁盘、网络:
- CPU : 计算能力核心,其表现会直接影响数据库的逻辑运算能力,比方说查询计算、数据聚合、存储过程效率等。
- 内存 : 对性能非常关键,其核心是缓存频繁使用数据避免系统频繁与磁盘交互,性能表现一般都在纳秒级延迟,一般OLTP数据库建议内存和数据空间比例至少要保持在20%。
- 磁盘 : 相比前两者性能最差,因此磁盘性能表现直接影响数据库整体表现。云数据库目前提供两种磁盘,包括本地盘和云盘,本地盘性能高(微秒级延迟)但存储容量有限,云盘更大存储容量但性能受限(毫秒级延迟)。
- 网络 : 网络影响主要在于带宽,因此大查询或者大事务,对网络的要求就很高。
重点分析磁盘性能对业务有影响的因素包括:
- 延迟:延迟越低,系统响应越实时,如对于交易型系统,延迟会影响到每次用户操作是否卡顿。
- 吞吐