学习是一种信仰。
分类: 架构设计与优化
2013-08-27 14:19:53
数据库的性能测试,涉及面广,且专业,要想有所建树,需要长期探索、积累。
简单概括,通常会有如下相关项:
硬件、操作系统、数据库配置、应用模型
第一,硬件
1. 变化的硬件:
通常指裸机配置等,如CPU、内存大小都对性能有重要影响。
再如裸设备、固态硬盘等,对性能也影响很大。
2. 变化的网络环境:
10M、100M、千兆以太网甚至光纤等,会对应用系统的整体性能产生较大影响。
第二,操作系统
典型的如Linux系列、Win系列,通常会有不同的性能表现。
操作系统的一些设置,也可能对数据库性能造成影响。如块读写的设置等。
第三,数据库
数据库,至少包含2部分内容,一是数据库引擎,一是接口(如JDBC、ODBC等)。
接口如果实现的不好,某些时候,也容易成为瓶颈。
数据库引擎,可调优之处很多,需要根据实际情况,综合判断。如分区、索引、日志、数据文件、数据库可调参数等
第四,应用模型
基于数据库的应用,原型是什么样的,需要深入了解,掌握,才能因地制宜地结合数据库一起调优。
目前国内对于数据库的应用现状,基本的问题是:应用不当,SQL写法有误。
应用模型对于数据库的影响可能有:
1)读多写少、读写并重、读少写多;
2)并发情况
3)数据量
4)中间件
总之,应用逻辑和应用模型对数据库的使用方式,更多地影响着系统的瓶颈(通常情况,硬件一旦固定,更换的机会少。比如,数据库性能测试的TPCX系列,很多硬件厂家给出的测试最佳值,都是在固定硬件的环境下进行的)。